Alle User anzeigen, die Excel-Datei geöffnet haben
Guten Morgen zusammen,
gibt es vielleicht eine Möglichkeit,
in einer MSG-Box ALLE Benutzernamen anzuzeigen, die gerade (schreibgeschützt, oder nicht) in einer Excel-Datei sind?
Mit diesem Code wird nur der user angezeigt, der nicht schreibgeschützt in der Datei ist:
MsgBox (Application.UserName)
Ich hätte aber gerne eine Info über alle, die gerade auf der Datei arbeiten.
Geht sowas?
Danke im Voraus
Gruß
gibt es vielleicht eine Möglichkeit,
in einer MSG-Box ALLE Benutzernamen anzuzeigen, die gerade (schreibgeschützt, oder nicht) in einer Excel-Datei sind?
Mit diesem Code wird nur der user angezeigt, der nicht schreibgeschützt in der Datei ist:
MsgBox (Application.UserName)
Ich hätte aber gerne eine Info über alle, die gerade auf der Datei arbeiten.
Geht sowas?
Danke im Voraus
Gruß
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 1074207142
Url: https://administrator.de/contentid/1074207142
Ausgedruckt am: 25.11.2024 um 01:11 Uhr
4 Kommentare
Neuester Kommentar
net file
auf dem Rechner eintippen der die Datei freigibt oder per psexec ausführen (Remote).Oder auch
psfile
(Sysinternals)https://www.windows-faq.de/2011/08/17/geoeffnete-dateien-per-net-file-od ...
Zitat von @mreske:
Hallo, danke für den Tipp.
Ist aber nicht ganz das, was ich gesucht habe.
Beispiel:
in der Datei: C:\VBA\Text.xlsm
sind 3 User schreibgeschützt
Ich bin in der selben Datei, aber nicht schreibgeschützt.
Nun möchte ich über eine Schaltfläche (die ich in Tabelle der Text.xlsm hinterlege) eine MSG-Box aufrufen
mit der Meldung:
müller
meier
peters
schaefer
WIe gesagt: mit MsgBox (Application.UserName) zeigt er nur mich als user an.
Aber wahrscheinlich geht das gar nicht. Ich finde im Netz keine Infos dazu.
Kannst du doch über VBA mit dem Script.Shell Object den Net file Befehl ausführen und die Konsolenausgaben auslesen.Hallo, danke für den Tipp.
Ist aber nicht ganz das, was ich gesucht habe.
Beispiel:
in der Datei: C:\VBA\Text.xlsm
sind 3 User schreibgeschützt
Ich bin in der selben Datei, aber nicht schreibgeschützt.
Nun möchte ich über eine Schaltfläche (die ich in Tabelle der Text.xlsm hinterlege) eine MSG-Box aufrufen
mit der Meldung:
müller
meier
peters
schaefer
WIe gesagt: mit MsgBox (Application.UserName) zeigt er nur mich als user an.
Aber wahrscheinlich geht das gar nicht. Ich finde im Netz keine Infos dazu.
Einen VBA Befehl explizit dafür gibt es nicht.
Wenn es dagegen echte "Shared Workbooks" sind dann geht so was hier
Sub SharedWorkbookUsers()
Dim strUsers As String
Users = ActiveWorkbook.UserStatus
For i = 1 To UBound(Users, 1)
strUsers = strUsers & "User: " & Users(i, 1) & " | Opened since: " & Users(i, 2) & " | Mode: " & IIf(Users(i, 3) = 1, "Exclusive", "Shared") & vbNewLine
Next
MsgBox strUsers
End Sub
Zeigt aber nur die User wenn die Arbeitsmappe wirklich als "Shared Workbook" freigegeben wurde, zus. werden read only mode user nicht angezeigt
Die UserStatus-Eigenschaft gibt keine Informationen über Benutzer zurück, die die angegebene Arbeitsmappe schreibgeschützt geöffnet haben.