Checkbox mit PW - Abbruch Code hinzufügen
#1
Hallo zusammen,

ich habe eine Checkbox mit einem Passwort versehen. Dies funktioniert mit diesem Code auch so weit:
Private Sub CheckBox1_Change()
Dim PW
If B Then B = False: Exit Sub
PW = Application.InputBox("Passwort eingeben", "Passwort")
If PW <> "xxx" Then
    B = True
    CheckBox1.Value = Not CheckBox1.Value
End If
End Sub
Ich kann nun aber bei der Box weder Abbrechen noch die Box "weg"klicken.

Erst wenn ich das PW richtig eingebe verschwindet die Meldung und die Checkbox wird de/aktiviert.

Was muss ich dem Code noch hinzufügen, dass er bei falscher PW-Eingabe eine Fehlermeldung erzeugt und dass ich auch die Box "Abbrechen" kann.

Vielen Dank schon mal für eure Hilfe.
Top
#2
Hallo,

teste mal:


Code:
Private Sub CheckBox1_Change()
Dim PW
If B Then B = False: Exit Sub
PW = Application.InputBox("Passwort eingeben", "Passwort")
If PW <> "xxx" And PW <> False Then
   B = True
   CheckBox1.Value = Not CheckBox1.Value
End If
End Sub
Gruß Atilla
[-] Folgende(r) 1 Nutzer sagt Danke an atilla für diesen Beitrag:
  • eitel91
Top
#3
Super vielen Dank atilla,

Abbrechen und "x" klicken klappt. Fehlermeldung bei Falscheingabe ist ja nicht dabei, dass benötige ich aber auch nichts zwingend.

Nochmals vielen Dank
Top
#4
Hallo zusammen,

ich habe in der Excel mehrere Checkboxen. Ich möchte nun, dass sich mehrere Checkboxen mit dem selben PW bearbeiten lassen. Sonst muss ich bei jedem Klick auf eine Checkbox dass PW erneut eingeben.

Wie muss der Code dann aussehen?

Schonmal vielen Dank für eure Hilfe
Top
#5
Moin!
Warum versiehst Du die Datei nicht einfach mit einem Schreibschutzkennwort?
(so ganz ohne VBA)

Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Top
#6
Moin,

die Datei ist auch mit so einem Schreibschutz versehen. Die Datei wird aber von mehreren Personen verwendet. Diese Personen dürfen nur bestimmte Bereiche der Datei mit ihrem eigenen Passwort bearbeiten, was ja auch mit der Funktion "Benutzer dürfen Bereiche bearbeiten" sehr einfach zu handhaben ist.

In diesen Bereichen sind viele Checkboxen und ich möchte, dass ich diese nun mit dem selben PW versehen kann.
Top
#7
Dann blende doch mal die Textboxen aus
Nur 'snb' kan etwas ändern:


Code:
Sub m_snb()
  for j=1 to 10
   Me("Textbox" & j).enabled=environ("username")="snb"
  next
End sub
Top
#8
Hallo SNB,

diese Information verstehe ich nicht?!

Kannst du deutlicher werden.
Top
#9
Hallo,

snb geht nach dem Motto vor, wer es nicht versteht, stirbt halt dumm.
Man müsste dann umgekehrt fragen, der der es versteht, braucht erst es dann?
Zum Glück weiß ich, dass es egal ist ober ich dumm oder hoch intelligent sterbe. Angel 

Nun zur Erklärung des codes von snb.
Das ist eine sehr intelligente Herangehensweise.

Du hast dei Textboxen erstellt und platziert, dann blendest Du sie aus.
Nach Ausführung des Codes, werden Textboxen 1-10 eingleblendet, wenn der am Computer angemeldete Benutzer dem im Code angegebenen Namen entspricht.
In diesem fall wäre es "snb", in Deinem fall würdest Du Deinen anmeldenamen dahin schreiben.

Nun kannst Du hingehen, und für die verschiedenen Benutzer einzelne Textboxen zuweisen nach dem Prinzip des snb' s Codes.
Also
von 1-10 Name xy
von 11-15 Name xz

Ich denke, aber, das Du dann mit der Optik argumentieren wirst. Wenn nicht, ist das eine sehr elegante Lösung.
Gruß Atilla
Top
#10
Hallo SNB und atilla,

hört sich echt gut an. Es ist bei mir ber zwingend notwendig, dass alle Felder immer sichtbar sind.

Habt ihr noch andere Ideen?
Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste