Blattschutz aufheben bei bestimmten User
#1
Hallo,
ich habe folgendes vor.

Diese Excel Datei wird von allem Mitarbeiter benutzt.
Alle Mitarbeiter dürfen „Lesen“ und den Inhalt je nach Bedarf „Filtern“, aber nichts verändern.

Nun möchte ich, wenn MA1 bis MA5  (SystemBenutzer lauten wie folgt „A7178594“ „A8178594“ „A1175794“ „A4118524“ „Admin“) die Excel Datei öffnen, soll der Blattschutz bei allen Tabellen aufgehoben werden.
=> Damit diese MA die Datei bearbeiten können.

Im Netz habe ich folgenden Code gefunden.
Mit nur einem MA Funktioniert es.

Doch wie ändere ich es so um, dass diese oben genannten MA berücksichtigt werden.

Code:
Declare Function GetUserName Lib "advapi32.dll" Alias "GetUserNameA" (ByVal lpBuffer As String, nSize As Long) As Long

Code:
Sub UserName()
Dim Buffer As String * 100
Dim BuffLen As Long
BuffLen = 100
GetUserName Buffer, BuffLen
  If Left(Buffer, BuffLen - 1) = "A7178594" Then   ' MA-1
      Call Blattschutz_alle_Tabellen_aufheben
  End If
End Sub
Danke
Top
#2
Hallo FaDos,
nach Anpassen des Arrays Namen sollte es gehen:
Sub UserName()
Dim Buffer As String * 100
Dim BuffLen As Long
Dim Namen, nam
  Namen = Array("a", "b") 'Namen der berechtigten Nutzer
  GetUserName Buffer, BuffLen
  For Each nam In Namen
    If Left(Buffer, BuffLen - 1) = nam Then
      Call Blattschutz_alle_Tabellen_aufheben
    End If
  Next nam
End Sub


VBA/HTML-CodeConverter, AddIn für Office 2002-2016 - in VBA geschrieben von Lukas Mosimann. Projektbetreuung:RMH Software & Media

Code erstellt und getestet in Office 14 - mit VBAHTML 12.6.0

Gruß der AlteDresdner
Gruß der AlteDresdner (Win11, Off2021)
Top
#3
Hallo,
bei mir Funktioniert es leider nicht.


Wir benutzen Excel 2007

Danke
Top
#4
Hallo FaDos,
und Du hast bei Namen = Array("a", "b")

auch statt a bzw. b Deine Systemnamen A717... eingesetzt? Was heißt: es funktioniert nicht?
Gruß der AlteDresdner
Edit: und die von mir vergessene zeile Bufflen=100 wieder eingesetzt?
Gruß der AlteDresdner (Win11, Off2021)
Top


Gehe zu:


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