Supportnet Computer
Planet of Tech

Supportnet / Forum / Tabellenkalkulation

Makro zum Blattschutz aufheben





Frage

hallo zusammen... möchte in meiner datei eine makro ausführen. die einzelnen tabellenblätter sind mit blattschutz. ein bißchen was hab ich ja schon alleine hin bekommen. wenn ich vor mein makro [i]ActiveSheet.Unprotect ("passwort")[/i] schreibe und hinter mein makro dann [i]ActiveSheet.Protect ("passwort")[/i], dann funktioniert das, [b]aber nur[/b] wenn das makro sich auf [b]ein[/b] tabellenblatt bezieht. mein makro soll aber auf verschiedenen tabellenblättern aktionen ausführen. wie und wo setzte ich den befehl genau ein, damit er mir nicht mittendrinne abbricht? noch zwei kleine anmerkungen: [list]alle blätter sind mit dem selben passwort geschützt[/list] [list]wenn ich den blattschutz auf allen blättern raus nehme und das makro ausführe, dann bricht er nicht ab und nach der ausführung sind alle blätter geschützt[/list] bitte helft mir! danke und mit freundlichen grüßen daniz

Antwort 1 von Hajo_Zi

Hallo daninz,

ich vermuzte mal Du arbeitest ohne Select und Actvate, das ist in VBA nicht notwendig. Schreibe für ActiveSheet Worksheets("Tabelle1")
Tabellennamen anpassen.

Gruß Hajo

Antwort 2 von daniz

hallo hajo...

danke für die schnelle antwort, aber ich weiß leider nicht so richtig wie es gemeint ist (hab mir das alles mehr oder weniger selbst bei gebracht)

stell teile des makro mal unten dran, vielleicht kannst du mir dann etwas näher erklären was ich ersetzen bzw. ändern muss.

gruß daniz

Sub erfassen()
´
´ erfassen Makro
´ Makro am 16.08.2006 von ZschauD aufgezeichnet
´

´
ActiveSheet.Unprotect ("passwort")
Application.ScreenUpdating = False
Range("H20").Select
Selection.Copy
Sheets("Urlaubsbearbeitung").Select
ActiveSheet.Unprotect ("passwort")
Range("G1520:G1525").Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
Range("G20:IV1525").Select
Application.CutCopyMode = False
Selection.Sort Key1:=Range("G20"), Order1:=xlAscending, Key2:=Range("I20" _
), Order2:=xlAscending, Header:=xlGuess, OrderCustom:=1, MatchCase:= _
False, Orientation:=xlTopToBottom
Range("H1526:IV1531").Select
Selection.Copy
Range("H1520").Select
ActiveSheet.Paste
Range("F20").Select
ActiveSheet.Protect ("passwort")
Sheets("Erfassung und Pflege").Select
Range("H20").Select
Selection.Copy
Sheets("Urlaub 1. HJ").Select
ActiveSheet.Unprotect ("passwort")
Range("I276").Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
Sheets("Erfassung und Pflege").Select
Range("I20").Select
Selection.Copy
Sheets("Urlaub 1. HJ").Select
Range("J276").Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
Sheets("Erfassung und Pflege").Select
Range("J20").Select
Selection.Copy
Sheets("Urlaub 1. HJ").Select
Range("R276").Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
Sheets("Erfassung und Pflege").Select
Range("K20").Select
Selection.Copy
Sheets("Urlaub 1. HJ").Select
Range("T276").Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
Range("I26:IV276").Select
Application.CutCopyMode = False
Selection.Sort Key1:=Range("I26"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
Range("T26").Select
ActiveSheet.Protect ("passwort")
Sheets("Erfassung und Pflege").Select
Range("H20").Select
Selection.Copy
Sheets("Urlaub 2. HJ").Select
ActiveSheet.Unprotect ("patsux")
Range("I276").Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
Sheets("Erfassung und Pflege").Select
Range("I20").Select
Selection.Copy
Sheets("Urlaub 2. HJ").Select
Range("J276").Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
Sheets("Erfassung und Pflege").Select
Range("J20").Select
Selection.Copy
Sheets("Urlaub 2. HJ").Select
Range("R276").Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
Sheets("Erfassung und Pflege").Select
Range("K20").Select
Selection.Copy
Sheets("Urlaub 2. HJ").Select
Range("T276").Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
Range("I26:IV276").Select
Application.CutCopyMode = False
Selection.Sort Key1:=Range("I26"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
Range("T26").Select
ActiveSheet.Protect ("passwort")
...
...
...
End Sub