Bitte DRINGEND Hilfe bei VBA Problem, Vielen Dank!
31.01.2006 20:02:20
MUC
Das VBA-Projekt funktioniert bis auf folgendes Problem wunderbar.
Problembeschreibung:
Wenn ein jemand sich am PC anmeldet und der PC-User Name nicht mit einem der Tabellenblätternamen übereinstimmt, dann soll die MsgBox angezeigt werden und die Datei geschlossen werden.
Derzeit ist es so, dass in dem Fall alle Blätter angezeigt werden?!?!?
Was mache ich falsch? bzw was muss ich am VBA ändern damit es klappt?
Bitte habt Geduld mit mir und erklärt mir die Antwort in laienverständlichen Worten, da ich erst VBA-Anfänger bin:-)
Vielen dank für eure Geduld und die tollte Hilfsbereitschaft hier im Forum!!!
Gruss
Marco
(Zum Verständnis: Falls die sich einer mit User Ma1 oder Ma2 oder Ma3 am PC anmeldet, dann werden alle Blätter der Exceltabelle angezeigt, ansonsten werden Blätter nur angezeigt wenn der PC-Anmeldename mit einem der Tabellenblätter übereinstimmt)
_________________________________________________________________
Private Sub workbook_open()
Dim objsh As Worksheet
Dim unam As String
Dim blnAccess As Boolean
Application.ScreenUpdating = False
unam = Environ("Username")
If unam = "ma1" Or unam = "ma2" Or unam = "ma3" Then
For Each objsh In Me.Worksheets
objsh.Visible = xlSheetVisible
Next
blnAccess = True
Else
For Each objsh In Me.Worksheets
If objsh.Name = unam Then
objsh.Visible = xlSheetVisible
blnAccess = True
End If
Next
End If
If blnAccess Then
Sheets("schlusstabelle").Visible = xlSheetVeryHidden
Else
MsgBox "Sie besitzen NICHT die Netzwerkberechtigung diese Exceldatei zu öffnen!"
Me.Close False
End If
Application.ScreenUpdating = True
End Sub