Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Schreibschutzdialog und Usernamen

Forumthread: Schreibschutzdialog und Usernamen

Schreibschutzdialog und Usernamen
13.05.2019 13:03:49
Sven
Hallo zusammen,
ich habe eine Arbeitsmappe, bei der gleich beim Start ein Userform unterschiedliche Funktionen anbietet. Die meisten erfordern exklusiven Zugriff auf die Mappe (readonly = false) und sind anderenfalls gesperrt.
Jetzt würde ich gerne, wenn die Mappe bereits von einem anderen User geöffnet ist, das Userform um einen Hinweis ergänzen. Kann ich irgendwie auf diesen (im Standarddialog von Excel ja angezeigten) Usernamen zugreifen und den Standarddialog darüber hinaus unterdrücken?
Theoretisch wäre es sonst ja möglich, dass ich beim Öffnen (readonly = true) den Usernamen temporär wegschreibe und beim zweiten Öffnen (readonly = true) auslese. Aber in eine externe Textdatei möchte ich das nicht schreiben und die eigentliche Mappe ist ja nunmal schreibgeschützt...
Hoffentlich ist mein Anliegen rübergekommen. Würde mich über Tipps freuen.
Sven
Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Schreibschutzdialog und Usernamen
13.05.2019 14:04:12
Rudi
Hallo,
an den Usernamen kommst du so:
Function fncWerBenutztDieDatei(ByVal strFullName As String) As String
Dim strPath As String, strFile As String, tmp
Dim secUtil As Object
Dim secDesc As Object
Dim strPS As String
strPS = Application.PathSeparator
tmp = Split(strFullName, strPS)
strFile = tmp(UBound(tmp))
tmp(UBound(tmp)) = ""
strPath = Join(tmp, strPS)
Set secUtil = CreateObject("ADsSecurityUtility")
Set secDesc = secUtil.GetSecurityDescriptor(strPath & strFile, 1, 1)
fncWerBenutztDieDatei = secDesc.owner
End Function
Sub WerBenutztDieDatei()
Dim strUser As String, strFileName
strFileName = Application.InputBox("Vollständiger Dateiname?", "Dateinamen eingeben", , , , ,  _
, 2)
If TypeName(strFileName) = "String" Then
strUser = fncWerBenutztDieDatei(strFileName)
MsgBox strUser
End If
End Sub
Gruß
Rudi
Anzeige
AW: Schreibschutzdialog und Usernamen
13.05.2019 15:44:50
Sven
Hallo Rudi,
danke für die Rückmeldung.
Was ist denn ADsSecurityUtility?
In meinem Fall soll die Datei ja schauen, wer sie selber nutzt - klappt das dann so auch?
Grüße
Sven
AW: Schreibschutzdialog und Usernamen
13.05.2019 22:45:42
fcs
Hallo Sven,
für das Unterdrucken der Standardmeldung, wenn die Datei ein anderer User geöffnet hat, hab ich keine Lösung.
In der Beispiel-Datei hab ich mal versucht Rudis Function einzubauen plus eine Prüfung der Datei auf ReadOnly beim öffnen. Je nach Status wird dann im Userform ein Label mit Hinweis eingeblendet.
https://www.herber.de/bbs/user/129752.xlsm
Ich konnte jetzt nicht testen, wie das aussieht wenn ein anderer User im Netz die Datei geöffnet hat.
LG
Franz
Anzeige
AW: Schreibschutzdialog und Usernamen
14.05.2019 09:10:58
Sven
Danke, Franz & Rudi.
;

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige