Live-Forum - Die aktuellen Beiträge
Datum
Titel
29.03.2024 13:14:12
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1056to1060
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
Inhaltsverzeichnis

UserName zulassen/sperren

UserName zulassen/sperren
04.03.2009 09:29:52
Erich
Hallo EXCEL-Freunde,
wenn ein Tabellenblatt geöffnet wird, sollen nur bestimmte User Schreibberechtigung haben;
wie kann ich den User "12345" freischalten mit folgendem Makro; erhalte Fehlermeldung
wie "Variable nicht definiert":

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim UserName  As Object  '---->>>?
If Application.UserName  12345 Then
ActiveSheet.EnableSelection = xlNoSelection
ActiveSheet.Protect
Else
ActiveSheet.EnableSelection = Selection
ActiveSheet.Unprotect
End If
End Sub


Besten Dank!
mfg

12
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: UserName zulassen/sperren
04.03.2009 09:37:03
Oberschlumpf
Hi Erich
Versuch es mal so:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Environ("UserName")  "12345" Then
ActiveSheet.EnableSelection = xlNoSelection
ActiveSheet.Protect
Else
ActiveSheet.EnableSelection = Selection
ActiveSheet.Unprotect
End If
End Sub


Environ("UserName") bezieht sich auf den Anmeldenamen, mit dem sich ein User direkt nach dem PC-Start bei Windows anmeldet.
Nebenbei bemerkt...wenn du wirklich willst, dass dieser Code beim Öffnen der Datei wirkt, musst du den Code ins Workbook.Open- und nicht ins SelectionChange-Ereignis schreiben.
Hlfts?
Ciao
Thorsten

Anzeige
AW: UserName zulassen/sperren
04.03.2009 12:35:04
Erich
Danke Thorsten!
Hilft schon weiter; jetzt hängt es an folgendem:
wenn die Arbeitsmappe geschützt wurde "xlNoSelection" von einem anderen User;
dann bleibt sie geschützt beim nächsten öffnen, auch wenn sich User "12345" anmeldet.
Also die aufhebung des Schutzes funktioniert noch nicht.
Danke!
mfg
AW: UserName zulassen/sperren
04.03.2009 12:40:33
Ramses
Hallo
"...wenn die Arbeitsmappe geschützt wurde "xlNoSelection" von einem anderen User..."
Das geht nur über die VBA-Umgebung.
Wenn deine Mappe dermassen offen ist, dass jeder Benutzer dort hin kann, vergiss den ganzen Mappenschutz
Gruss Rainer
AW: UserName zulassen/sperren
04.03.2009 13:06:28
Erich
Danke für die Info Rainer; aber das ist natürlich so geplant, dass die VBA-Umgebung
geschützt wird.
mfg
Anzeige
AW: UserName zulassen/sperren
04.03.2009 13:27:17
Ramses
Hallo
"...dass die VBA-Umgebung geschützt wird..."
Dann stellt sich die Frage doch gar nicht
Gruss Rainer
AW: UserName zulassen/sperren
04.03.2009 17:10:50
Erich
Sorry, Frage stellt sich doch:
bei meiner anfrage ging es darum dass der Schutz des Tabellenblattes wieder aufgehoben wird -
nicht der Schutz der VBA.
mfg
AW: UserName zulassen/sperren
05.03.2009 04:05:34
Oberschlumpf
Hi Erich
Hast du den Code auch ins WorkbookOpen-Ereignis verschoben?

Private Sub Workbook_Open()
If Environ("UserName")  "12345" Then
ActiveSheet.EnableSelection = xlNoSelection
ActiveSheet.Protect
Else
ActiveSheet.EnableSelection = Selection
ActiveSheet.Unprotect
End If
End Sub


Hab ich getestet, und es funzt...wenn sich User XY anmeldet, ist das jeweils aktive Sheet - und nach deinem Code NUR das jeweils aktive Sheet - geschützt
Meldet sich User 12345 an, wird der Schutz fürs aktive Sheet deaktiviert.
Klappts nun auch bei dir?
Wenn nicht, zeig uns mal (d)eine Bsp-Datei, in der es NICHT funzt.
Ciao
Thorsten

Anzeige
AW: UserName zulassen/sperren
05.03.2009 09:52:02
Erich
Hallo Thorsten,
danke - jetzt klappt das. Leider scheitere ich jetzt an der Freischaltung eines oder von zwei weiteren
Usern; ergänzt habe ich:
If Environ("UserName") = "12345" Or Environ("UserName") = "67890" Then
ActiveSheet.EnableSelection = Selection
ActiveSheet.Unprotect
Else
ActiveSheet.EnableSelection = xlNoSelection
ActiveSheet.Protect
End If
Der User 67890 erhält allerdings ein geschütztes Blatt; verschiedene andere Varianten (z.B. 2 x If
oder And statt Or) helfen auch nicht.
Eine Idee?
Danke!
mfg
AW: UserName zulassen/sperren
05.03.2009 12:59:41
Oberschlumpf
Hi Erich
Hab deinen Code gerad getestet...mit User 12345 UND 67890 (extra Benutzerkonten angelegt)
Und der Code funzt!
Sowohl User 12345 als auch 67890 erhalten ein ungeschütztes ActiveSheet.
Eine Bsp-Datei hast du uns leider nicht gezeigt..schade!...glaub mir, hättest du das getan, hätt ich dir vielleicht besser helfen können...denn...bei mir funzt es ja...dein Code, wie du ihn geschrieben hast.
Ohne Bsp bleibts ein längeres FrageAntwort-Spiel.
Ciao
Thorsten
Anzeige
AW: UserName zulassen/sperren
06.03.2009 06:04:59
Erich
OK - Danke nochmals; werde am Wochenende die Datei hochladen (geht vom aktuellen PC nicht)
mfg
Erich
Hat sich erledigt - Danke!
07.03.2009 17:09:16
Erich
Code passt!
ohne VBA
04.03.2009 09:42:22
Tino
Hallo,
schau mal unter
Extras -> Schutz -> Benutzer dürfen Bereich bearbeiten...
Damit kannst Du es auch ohne VBA lösen.
Gruß Tino

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige