none
Office-Konto: Benutzerinformationen in VBA auslesen?

    Frage

  • Ich möchte in MS Access 2016 mit VBA den aktuell angemeldeten Benutzer des Office-Kontos auslesen (nicht Windows- oder Netzwerkbenutzer). Der angemeldete Benutzer erscheint ja in den Office2016-Applikationen jeweils in der Titelleiste oben rechts. Environ() usw. hilft leider nicht weiter.

    Da einige User über verschiedene Office-Konti verfügen (teilweise geschäftlich und/oder privat) und zwischen diesen auch wechseln (z.B. wegen Zugriff auf eigene OneDrive-Dateien), möchte ich den Benutzernamen für die userspezifische Darstellung von Infos in Formularen, Abfragen usw. weiterverwenden können. Habe schon herausgefunden, dass die bisher angemeldeten User in die Registry eingetragen werden und somit auslesbar sind, jedoch welcher von diesen ist der aktuell angemeldete?

    Danke für die Hilfe

    Samstag, 17. September 2016 06:25

Alle Antworten

  • Ich habe nur einen Stackoverflow-Beitrag gesehen, wo die Antwort ist: "Es geht nicht":

      http://stackoverflow.com/questions/28298734/how-i-can-get-current-office-windows-account-email

    Ausserdem gibt es die CurrentWebUser-Funktion

    Debug.Print Application.CurrentWebUser(AcWebUserDisplay.acWebUserEmail)
    Debug.Print Application.CurrentWebUser(AcWebUserDisplay.acWebUserID)
    Debug.Print Application.CurrentWebUser(AcWebUserDisplay.acWebUserLoginName)
    Debug.Print Application.CurrentWebUser(AcWebUserDisplay.acWebUserName)
    

    Die gibt in einer Desktop-Applikation aber nur NULL zurück.

    Kannst du sagen, wo in der Registry die bisher angemeldeten User eingetragen sind? Vielleicht findet jemand von da aus etwas...

    Matthias Kläy, Kläy Computing AG

    Mittwoch, 21. September 2016 18:26
  • Vielen Dank für die Rückmeldung.

    Registry:

    HKEY_CURRENT_USER\SOFTWARE\Microsoft\Office\16.0\Common\Identity\Identities

    Beste Grüsse

    Mittwoch, 21. September 2016 19:05