Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender Navigationstipps
Inhaltsverzeichnis

Blattschutz Abfrage

Blattschutz Abfrage
17.11.2003 17:15:46
Helena
Hallo Leute,
gibt es eine Möglichkeit in einem Makro abzufragen, ob ein Blattschutz existiert?
Ich würde gerne den Blattschutz nur dann aufheben, wenn dieser auch wirklich existiert, weil ich nach dem ich eine bestimmte Zelle verändert habe, den Blattschutz wieder setzen muss. Hat kein Blattschutz existiert, darf ich nach der Veränderung keinen setzten. Deswegen ist die Abfrage wichtig.
Danke
Helena

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Blattschutz Abfrage
17.11.2003 17:20:22
Boris
Hi Helena,


Sub schutz()
MsgBox IIf(ActiveSheet.ProtectContents, "Blatt ist geschützt", "Blatt ist nicht geschützt")
End Sub


Grüße Boris
Nachfrage
17.11.2003 17:28:51
andreas e
hallo boris,
dachte ja zuerst dein IIf ist ein zitternder Finger oder schreibfehler !
Aber im Gegenteil ! Das ist ja echt genial ! Habe mal eben die F1 gedrückt -
interpretiere ich das richtig ??
Bei dieser function frage ich was ab, gebe die ja nein parameter mit und dann wird das ergebnis in dem fall durch die msgbox ausgegeben und gleichzeitig ins gegenteil gekehrt ??
Gruß
Andreas E

http://www.skripteundaufgaben.de
viele kostenlose Downloads und Links zu EXCEL und mehr
http://www.fachforen.de
eine Linksammlung zu diversen fachforen
Anzeige
Bis auf den letzten Satz: Ja. (Funktion IIf)
17.11.2003 17:37:36
Boris
Hi Andreas,

"...und gleichzeitig ins gegenteil gekehrt." stimmt dann nicht mehr.

IIf ist eigentlich nur ne ganz normale WENN-Abfrage in VBA - auch wenn sie manchmal nach nem tattrigen Finger aussieht...;-)

IIf(expr, truepart, falsepart)

entspricht

=WENN(Prüfung;Dann_Wert;Sonst_Wert)

mit dem einzigen Unterschied, dass der "falsepart" auch ausgewertet wird, wenn "expr" WAHR (TRUE) ist. Und wenn "falsepart" einen Fehler enthält, dann liefert die gesamte Funktionen einen Fehler.


Sub test_IIf()
MsgBox IIf(1 = 1, 5 * 2, 5 / 0)
End Sub


Liefert "Laufzeitfehler 11 - Division durch Null"

=WENN(1=1;5*2;5/0)

liefert hingegen 10 - da der Sonst_Wert nicht berechnet wird, solange die Bedingung WAHR ist.

Grüße Boris
Anzeige
Danke Boris ...
17.11.2003 17:45:11
andreas e
das muss ich mir mal noch in aller ruhe ansehen ...
für mich sieht das nach ner alternative aus, wenn es nur wahr oder falsch gibt, ...
aber werde wie gesagt mir das ganze mit F1 nochmals in aller Ruhe ansehen !
Danke für Deine Mühe
Gruß
Andreas E

http://www.skripteundaufgaben.de
viele kostenlose Downloads und Links zu EXCEL und mehr
http://www.fachforen.de
eine Linksammlung zu diversen fachforen
Das siehst du doch schon genau richtig...
17.11.2003 17:47:19
Boris
Hi Andreas,

"...für mich sieht das nach ner alternative aus, wenn es nur wahr oder falsch gibt..."

Genau das ist es ja auch - absolut analog der WENN-Funktion.

Grüße Boris
Anzeige
AW: Blattschutz Abfrage
17.11.2003 17:23:35
ChrisL
Hi Helena

Option Explicit


Sub t()
Dim SchutzJa As Boolean
With Sheets("Tabelle1")
SchutzJa = .ProtectContents
.Unprotect
.Range("A1") = "xy"
If SchutzJa Then .Protect
End With
End Sub


Gruss
Chris

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige