Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
772to776
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
772to776
772to776
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

code per vba ausschalten

code per vba ausschalten
16.06.2006 23:17:20
Bernd
hallo leute,
ich habe in tabelle1 folgenden code:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
ActiveSheet.Protect password:="ppppp"
End Sub

nun meine frage.
kann ich, per vba, zuerst vor dem code ein ' setzten und nach abarbeitung eines codes das ' wieder weg nehmen?
und wenn ja, wie.
vielen dank für eure hilfe
gruss Bernd

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: code per vba ausschalten
HansHei
Hallo Bernd,
ich vermute mal Du möchtest für Deinen Code den Blattschutz zunächst deaktivieren und anschließend wieder setzen. Dann machs doch so:
ActiveSheet.Unprotect Password:="ppppp"
Dein Code...
ActiveSheet.Protect Password:="ppppp"
Gruß
Hans
AW: code per vba ausschalten
17.06.2006 00:07:42
Bernd
hi hans,
das ist soweit korrekt.
aber:
da die mappe auch von kollegen genutzt wird, die den blattschutz per vba aushebeln können möchte ich diesen code nutzen:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
ActiveSheet.Protect password:="ppppp"
End Sub

deswegen kann ich nicht mit:
ActiveSheet.Unprotect Password:="ppppp"
Dein Code...
ActiveSheet.Protect Password:="ppppp"
arbeiten, weill der code kopier und sortier arbeiten macht.
d.h., ich nehme schutz mit ActiveSheet.Unprotect Password:="ppppp" weg,
der code markiert was und setzt wegen

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
ActiveSheet.Protect password:="ppppp"
End Sub

wieder schutz ein. ergebnis, fehlermeldung im code.
deswegen möchte ich im code das ' setzten und danach wieder wegnehmen.
lasse mal offen für weitere hilfe,
vielen dank
gruss Bernd
Anzeige
AW: code per vba ausschalten
17.06.2006 00:18:23
Matthias
Hallo Bernd,
du willst wahrscheinlich die Ereignisprodeduren deaktivieren:

Application.EnableEvents = False
'Dein Code
Application.EnableEvents = True

Gruß Matthias
AW: code per vba ausschalten
17.06.2006 00:25:48
Bernd
hi matthias,
damit funzt es nicht.
es muss wirklich im code:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
ActiveSheet.Protect password:="ppppp"
End Sub

per code ein ' vor die zeile ActiveSheet.Protect password:="ppppp" gestzt werden und nach der code abarbeitung wieder weg genommen werden.
weiterhin offen.
vielen dank für eure hilfe
gruss Bernd
Anzeige
AW: code per vba ausschalten
17.06.2006 00:30:25
Matthias
Hallo Bernd,
doch, damit funktioniert es schon.
damit wird die Ausführung des Worksheet_Change()-Ereignisses verhindert.
und mit .EnableEvents = True wieder ermöglicht.
Hast du es denn ausprobiert?
Gruß Matthias
AW: code per vba ausschalten
17.06.2006 00:35:20
Bernd
hi matthias,
jepp, funktioniert.
mein fehler. hatte im code, beim testen, vergessen den schutz raus zu nehmen.
vielen dank
gruss Bernd
AW: code per vba ausschalten
17.06.2006 00:38:37
Matthias
Hallo Bernd,
übrigens ist es nicht schwer, den vom rekorder erzeugten Code so abzuwandeln, dass nix mehr markiert wird:
Aus
[Bereich].Select
Selection.[Befehl]
wird dann:
[Bereich].[Befehl]
geht schneller und die Anzeige zappelt nicht so rum.
siehe auch https://www.herber.de/xlfaq/xlbasics/main_sel.htm
Gruß Matthias
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige