Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1080to1084
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

Code Workbook_Open wird nicht ausgeführt

Code Workbook_Open wird nicht ausgeführt
22.06.2009 10:15:29
Thorsten
Hallo liebe Expertinne und Experten,
ich habe folgenden Code geschrieben (bzw. zusammen kopiert ... :o) )
Der Code funktioniert auch, aber nur wenn ich ihn selbst aus dem VB-Editor starte. Er soll aber eigentlich beim Öffnen der Datei ausgeführt werden.
Der Code liegt natürlich auf "DieseArbeitsmappe".
Kurz gesagt soll der Code Zugriffsrechte je nach eingeloggtem Windows-User vergeben. Dazu wird einfach der Blattschutz an entsprechenden Stellen gesetzt. Es ist nur eine kleine Hilfe um versehentliche Einträge zu verhindern und daher nicht durch Passwörter etc. geschützt.
Die Frage: Wieso funktioniert das ganze nicht sofort, wenn ich die Datei aufmache? Wieso muss ich den Code erst manuel ausführen?
Wahrscheinlich irgendwo ein Formatfehler oder die Funktion Workbook_Open falsch angezogen.
Vielen Dank im Voraus!
Gruss
Thorsten

Private Sub Workbook_Open()
Dim user, rechte As String, i As Integer
user = Environ("UserName")
With Worksheets("Zuständigkeiten")
For i = 2 To Cells(Rows.Count, 1).End(xlUp).Row
If Cells(i, 3).Value = user Then
If Cells(i, 4).Value = "ADMIN" Then
Call Schutz_auflösen
Exit Sub
End If
rechte = Cells(i, 4)
With Worksheets("Liste")
Range(rechte).Locked = False
Range("INFO").Locked = False
End With
End If
Next i
End With
With Worksheets("Liste")
.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True, AllowFiltering:=True
End With
End Sub



Private Sub Schutz_auflösen()
With Worksheets("Liste")
.Unprotect
.Cells.Locked = True
End With
End Sub



Private Sub Workbook_BeforeClose(Cancel As Boolean)
Call Schutz_auflösen
End Sub


2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Code Workbook_Open wird nicht ausgeführt
22.06.2009 10:59:08
Kawensmann
Hallo,
du benutzt in den ersten beiden With-Blocks keine Punkte:
Funktioniert's so?

Private Sub Workbook_Open()
Dim user, rechte As String, i As Integer
user = Environ("UserName")
With Worksheets("Zuständigkeiten")
For i = 2 To .Cells(Rows.Count, 1).End(xlUp).Row
If .Cells(i, 3).Value = user Then
If .Cells(i, 4).Value = "ADMIN" Then
Call Schutz_auflösen
Exit Sub
End If
rechte = .Cells(i, 4)
With Worksheets("Liste")
.Range(rechte).Locked = False
.Range("INFO").Locked = False
End With
End If
Next i
End With
With Worksheets("Liste")
.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True, AllowFiltering:=True
End With
End Sub


Gruß
Kawensmann

Anzeige
AW: Code Workbook_Open wird nicht ausgeführt
22.06.2009 11:13:56
Thorsten
Das hätte ich nie gefunden! :-D
Das wars ... danke!

314 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige