schutz -> blatt..."...">
Supportnet Computer
Planet of Tech

Supportnet / Forum / Tabellenkalkulation

blattschutz bei einmaliger ausführung allen tabellen zuweisen





Frage

wenn ich bei excel das menü "extras -> schutz -> blatt..." ausführe, kann man das aktuelle blatt schützen. da ich aber oft mit mehreren tabellen/(karteikarten) arbeite, ist es ziemlich zeitaufwendig, jede tabelle einzeln zu öffnen und jeweils ein kennwort einzugeben. wie kann ich nun 1x ein kennwort eingeben, welches dann gleichzeitig für alle tabellen aktiviert wird? vieln dank für eure bemühungen im voraus!

Antwort 1 von sicci

mit Alt+F11 in die Entwicklungsumgebung wechseln. dort ein Modul einfügen und folgende beiden Makros reinkopiern:

---------------------------------------

Sub SchutzHin()
dim x as integer
For x = 1 To Worksheets.Count
Worksheets(x).Protect password = "Schutz"
Next x
End Sub
-----------------------------------
Sub SchutzWeg()
dim x as integer
For x = 1 To Worksheets.Count
Worksheets(x).Unprotect password = "Schutz"
Next x
End Sub

--------------------------------------

soll das Makro immer beim Öffnen Deiner Datei ablaufen, dann nenne es: sub Auto_Open(), soll es immer beim schließen ablaufen, sub Auto_Close().

Gruß sicci

Antwort 2 von stefan

hallo sicci,

vielen dank für die schnelle hilfe. leider kenne ich mich mit makros überhaupt nicht aus, sodass deine antwort mir nur bedingt weitergeholfen hat.
wenn ich nach der eingabe in der entwicklungseingabe auf das excel-symbol links oben unter datei klicke, dann komme ich wieder zurück zur arbeitsmappe. wenn ich jetzt unter extras, makro,....ausführen klicke, dann werden auch alle tabellen geschützt. um jetzt wieder den schutz aufzuheben, lasse ich natürlich das makro "schutzweg" durchführen. soweit hat alles funktioniert. doch wie kann ich durch den menüpunkt "blattschutz aufheben..." den schutz aufheben, sodass ich ein p-wort eingeben muss? ich habe versucht "Schutz" einzugeben, was allerdings nicht funktioniert hat. andere benutzer der datei könnten ja ohne eingabe eines passwortes den schutz durch die ausführung des makros "schutzweg" wieder aufheben, was ja nicht sinn der sache ist. muss evtl. das makri durch ein p-wort geschützt werden? ich möchte also ein p-wort festlegen, was dann für alle tabellen gültig ist und mit einmaliger eingabe allen tabellen zugewiesen wird. der schutz soll dann durch eingabe des p-wortes wieder aufgehoben werden können. kann ich evtl. das makro auch irgendwie speichern, sodass es nicht weg ist, wenn ich excel schließe? kannst du mir evtl. ein gutes buch empfehlen, in denen die wichtigsten makros beschrieben sind?
wäre also nett, wenn du mir also mit dem blattschutz weiterhelfen könntest, da ich in sachen makros eher ein anfänger bin.

vielen dank für deine bemühungen im voraus!

gruss
stefan

Antwort 3 von sicci

Hallo Stefan,

es gibt 2 Möglichkeiten

die erste: Du erweiterst das Schutzweg-Makro um eine Input-Box:

Sub SchutzWeg()
Dim x As Integer
If InputBox("bitte Passwort angeben") = "Schutz" Then
For x = 1 To Worksheets.Count
Worksheets(x).Unprotect password = "Schutz"
Next x
Else: Exit Sub
End If
End Sub

oder die zweite :
Du speicherst die Makros in Deiner PERSONL.XLS. Diese sollte im Verzeichnis C:/Programme/MicrosoftOffice/XLStart liegen, dann wird sie beim Aufruf von Excel automatisch als erste geladen. Auf die Personl.xls kannst Du (sofern geöffnet) von allen Excel Dateien aus zugreifen. So könntest Du die "Schutz-Makros" für alle Deine Dateien benutzen.

Bücher:
dazu meld ich mich nochmal - bin grad nicht daheim und hab die Titel nicht im Kopf (es gibt 2 sehr gute Bücher)

Gruß
sicci

Antwort 4 von STEFAN

hallo sicci,

das mit dem passwort hat soweit funktioniert. danke.
doch entweder stell´ ich mich zu blöde an, oder ......ich weiß auch nicht.
um die entwicklungsumgebung zu schließen, klicke ich das diskettensymbol an. dann ist automatisch der ordner xlStart geöffnet. die personl.xls ist darin nicht enthalten. vielleicht liegt es daran, dass ich an einem netzwerk der firma hänge. auch wenn ich die datei suche... kann der pc diese datei nicht finden. demnach habe ich die makros unter personl.xls gespeichert. jetzt sind aber anscheinend nicht die einzelnen makros, sondern die komplette arbeitsmappe gespeichert. wenn ich jetzt excel komplett schließe und wieder öffne ist wirklich der blattschutz aktiviert. unter makros sind dann immer noch alle beiden makros aufgeführt.der schutz wird wieder aufgehoben, wenn ich über "makros ausführen..." --> "schutzWeg" das passwort eingebe. das passwort ist demnach leicht rauszufinden, wenn jemand über "makros..." --> schritt in die entwicklungsumgebung geht, da dann wieder alle zwei makros angezeigt werden. bevor ich die arbeitsmappe (makros?)in dem ordner xlstart gespeichert habe, habe ich unter vba-projekteigenschaften ein p-wort hinterlegt. dieses bezieht sich allerdings nur auf den schutz der vba-projekteigenschaften. wie sind also die makros für andere benutzer unsichtbar, sodass nur ich ein zugriff auf die makros habe? ich hoffe du verstehst diese excel-problematik?!

demnach muß ich dich wohl leider wieder stören!
wäre trotzdem über eine weitere hilfe dankbar.
gruss
stefan


Antwort 5 von sicci

Hallo Stefan,

- grundsätzlich brauchst Du die Makros nicht extra speichern. Sie werden zusammen mit der Arbeitsmappe gespeichert, natürlich nur, wenn Du beim schließen "Änderungen/speichern Ja" sagst.

- Jede beliebige .xls Datei, ob Personl.xls oder sonstwie gennannt, wird bei Excel Aufruf geöffnet, wenn sie im xlStart Ordner liegt. Du kannst Dir also eine anlegen und sie Personal.xls oder auch z.B. meineMakros.xls nennen, die dann immer beim Excelaufruf geöffnet wird. Um die enthaltenen Makros benutzen zu können, mußt Du im Menue Makros "in allen offenen Arbeitsmappen" anklicken.

- wenn Du in den vba-projekteigenschaften ein Passwort vergibst und zusätzlich "Projekt für Anzeige sperren" anhakst, dann kannst Du (erst nach dem Speichern und nochmaligen Aufrufen der Datei !!) die Makros nur noch nach Passworteingabe sehen/bearbeiten. Es kann also niemand Unbefugtes Deine Paßwörter einfach ablesen.

- Die Bücher heißen:
1) Excel-VBA-Programmierung, Autor Bernd Held, Verlag Markt+Technik, ISBN 3-8272-5815-4
2) VBA-Programmierung mit Excel 97 (gibts m.W. auch für 2000), Autor Michael Kofler, Verlag Addison-Wesley

beide Bücher sind sehr umfangreich (man muß sich schon bißchen reinknien), kosten auch um die 90,-DM, wobei das Buch von Bernd Held wohl eine Ecke praxisorientierter ist d.h. sehr viele Beispielmakros; das von Kofler hat einen größeren theoretischen Teil und beleuchtet recht intensiv Programmierpleblematik, auch Schwachstellen der Programmierung in VBA.
Ein relativ kleines Anfängerbuch heißt "Jetzt lerne ich VBA mit Excel..), ist m.E. aber nicht besonders empfehlenswert, da zu knapp in der Erklärung der Grundlagen - ist aber viel günstiger (glaube so um die 20,-)

Du solltest Dir aber auf jeden Fall mal die No.1 Internetseite zu Excel anschaun: www.herber.de. Dort gibts auch ein super frequentiertes Forum - m.E. das beste deutschsprachige für Excel - eine 1A funktionierende Archivsuche, Newsletter und für 90,- kann man von ihm ne CD erwerben.

Ein weiteres sehr gut frequentiertes Forum ist die MicrosoftNewsgroup. Geht nur mit Newsreader (z.B. OutlookExpress) Server: msnews.microsoft.com und Newsgroup heißt Microsoft.Public.de.Excel.

viel Spaß beim Programmiern (Vorsicht, Suchtpotential ;-)) und Gruss
sicci

Antwort 6 von STEfAN

hallo sicci,

es hat alles einwandfrei funktioniert!
finde ich echt klasse, was man alles mit vba in excel machen kann. im nachhinein ist das alles ganz einfach und logisch aufgebaut, doch wenn man mit programmierung nichts zu tun hat, hört sich das alles total kompliziert an. wenn ich mir nur die begriffe der beiden makros anschaue....! naja, ist aber ziemlich interessant!
nochmals vielen dank für die hilfe und die bücherempfehlungen.

gruss
stefan

Ich möchte kostenlos eine Frage an die Mitglieder stellen:


Ähnliche Themen:


Suche in allen vorhandenen Beiträgen: