Anzeige
Archiv - Navigation
360to364
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
360to364
360to364
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Blatt schützen und dennoch Makro ablaufen lassen

Blatt schützen und dennoch Makro ablaufen lassen
08.01.2004 14:48:15
Martin
Hallo liebe Excel-Gemeinde,
ich habe in einem Sheet ein Makro aufgezeichnet, welches Daten aus anderen Blättern der gleichen Datei zusammenträgt, sortiert usw. Angesprochen wird das Makro über einen Button.
Nun möchte ich gern das Blatt schützen, damit so leicht keiner darin rumwursteln kann. Schütze ich aber das Blatt, kann ich das Makro nicht mehr starten!?
Weiß jemand Rat?
Danke und Gruß
Martin

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Blatt schützen und dennoch Makro ablaufen lassen
08.01.2004 14:54:25
AndreasS
Hallo,
activesheet.unprotect "xyz"
Makrocode
activesheet.protect "xyz"
Gruß
Andreas
Funzt noch nicht ganz
08.01.2004 15:11:43
Martin
Danke für den Tipp. Leider kann ich den Button gar nicht erst anklicken. SOmit schafft Excel es gar nicht, bis zum Zeile activesheet.unprotect "xyz" zu kommen.
AW: Funzt noch nicht ganz
08.01.2004 15:13:36
AndreasS
Hallo,
poste mal den Code, ich bau es dir ein...
Gruß
AW: Funzt noch nicht ganz
08.01.2004 15:16:24
Martin
Hier ein Auszug:
Private Sub CommandButton1_Click()
ActiveSheet.Unprotect "Kontrolle"
Columns("A:A").Select
Selection.Sort Key1:=Range("A1"), Order1:=xlDescending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
Columns("B:B").Select
....
Columns("y:y").Select
Selection.Sort Key1:=Range("y1"), Order1:=xlDescending, Header:=xlNo, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
Range("P1").Select
ActiveSheet.Protect "Kontrolle"
Anzeige
AW: Funzt noch nicht ganz
08.01.2004 15:19:11
AndreasS
Hallo,
probiers mal damit:

Private Sub CommandButton1_Click()
MeinMakro
End Sub

In ein Modul:
Sub MeinMakro
ActiveSheet.Unprotect "Kontrolle"
Columns("A:A").Select
Selection.Sort Key1:=Range("A1"), Order1:=xlDescending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
Columns("B:B").Select
....
Columns("y:y").Select
Selection.Sort Key1:=Range("y1"), Order1:=xlDescending, Header:=xlNo, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
Range("P1").Select
ActiveSheet.Protect "Kontrolle"
End Sub

gruß
Anzeige
Läuft leider immer noch nicht :-(
08.01.2004 15:27:18
Martin
Hallo Andreas,
es funktioniert immer nur beim ersten mal. will ich das makro zweimal hintereinander ablaufen lassen, erscheint der fehler!
Der AHA-Effekt
08.01.2004 15:57:15
Martin
Probieren ergba folgendes: Man muß vorher ganz einfach den Button freisetzen:
Sheets("Name").Select
Range("A1").Select
dann erst Unprotect!
Nur falls es noch jemanden interessiert!
Martin
AW: Funzt noch nicht ganz (Teil2)
08.01.2004 15:13:40
Martin
Mein Fehler! Startet das Makro, kommt aber über die erste Zeile nicht hinaus. Sagt "Unpprotect-Methode ist fehlerhaft"???
AW: Blatt schützen und dennoch Makro ablaufen lassen
08.01.2004 14:54:55
Roland Hochhäuser
Hallo Martin,
am Anfang des Makros
ActiveSheet.Unprotect
und am Ende
ActiveSheet.Protect
einfügen.
Gruß
Roland
Anzeige
AW: Blatt schützen und dennoch Makro ablaufen lassen
09.01.2004 00:31:58
PeterW
Hallo Martin,
mal ganz am Rande - du hast das bestimmt schon im Forum gelesen: auf Select kann in VBA in der Regel verzichtet werden. Mal ein Ansatz für deinen aufgezeichneten Sortiercode:

Sub Sortierung()
Dim iCol As Integer
'sortiert Spalte A bis E
For iCol = 1 To 5
Columns(iCol).Sort Key1:=Cells(1, iCol), Order1:=xlDescending, Header:=xlGuess
Next
End Sub

Schau dir vielleicht auch mal das an:
http://xlfaq.herber.de/xlbasics/main_sel.htm
Gruß
Peter

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige