07.12.2017, 15:13
Hi,
mit diesem Code regele ich die Zugriffsrechte auf die Datei und einzelne Blätter:
Nun ist es so, daß einzelne User die Datei nur schreibgeschützt öffnen können, obwohl sie im ersten oder zweiten Case drin stehen.
"har" kann es nur schreibgeschützt öffnen
"can" kann sie normal öffnen
Wenn ich den "Case Else" auskommentiere, können sie von allen namentlich Genannten entsprechend der Case-Einteilung geöffnet werden.
Was habe ich im Code falsch gemacht?
mit diesem Code regele ich die Zugriffsrechte auf die Datei und einzelne Blätter:
Code:
Private Sub Workbook_Open()
Dim s As String
' SetTimer 'siehe mdl_Timer
s = VBA.Environ("Username")
MsgBox (s)
'Datei schreibgeschützt öffnen
'Ausdruck.Open(FileName, UpdateLinks, ReadOnly, Format, Password, WriteResPassword, IgnoreReadOnlyRecommended, Origin, Delimiter, Editable, Notify, Converter, AddToMru, Local, CorruptLoad)
' If Environ("username") <> "rab" or Environ("username") <> "har" Then
' Application.DisplayAlerts = False
' Workbooks.Open ThisWorkbook.FullName, , True
' End If
With ThisWorkbook
Select Case s 'Tabellen, Bereiche und Formularschaltflächen ausblenden, je nach Account
Case Is = "rab", "tig":
For i = 1 To Sheets.Count
.Sheets(i).Visible = True
.Sheets(i).Unprotect 'Password:="test"
Next i
.Sheets("Eingabe").Activate
.Sheets("Eingabe").Range("K1:K3") = ""
Case Is = "har", "can":
For i = 1 To Sheets.Count
.Sheets(i).Visible = True
.Sheets(i).Unprotect 'Password:="test"
Next i
.Sheets("Eingabe").Activate
.Sheets("Eingabe").Range("K1:K3") = ""
Case Is = "sl", "spe", "alm", "tik":
For i = 1 To Sheets.Count
.Sheets(i).Visible = True
Next i
.Sheets("Datenbank").Activate
Case Is = "tim", "brm", "smi":
For i = 1 To Sheets.Count
.Sheets(i).Visible = True
'.Sheets(i).Protect 'Password:="test"
Next i
.Sheets("Eingabe").Visible = False
.Sheets("Daten-Anzeige").Activate
Case Else
'Datei schreibgeschützt öffnen
'Ausdruck.Open(FileName, UpdateLinks, ReadOnly, Format, Password, WriteResPassword, IgnoreReadOnlyRecommended, Origin, Delimiter, Editable, Notify, Converter, AddToMru, Local, CorruptLoad)
Application.DisplayAlerts = False
Workbooks.Open ThisWorkbook.FullName, , True
Call drei_Blätter_zeigen 'hier werden nur 3 definierte Blätter angezeigt
.Sheets("Anzeige Fertigung").Activate
End Select
End With
Application.DisplayAlerts = True
End Sub
Nun ist es so, daß einzelne User die Datei nur schreibgeschützt öffnen können, obwohl sie im ersten oder zweiten Case drin stehen.
"har" kann es nur schreibgeschützt öffnen
"can" kann sie normal öffnen
Wenn ich den "Case Else" auskommentiere, können sie von allen namentlich Genannten entsprechend der Case-Einteilung geöffnet werden.
Was habe ich im Code falsch gemacht?