Application.Creator

Informationen und Beispiele zu den hier genannten Dialog-Elementen:
MsgBox


Excel-Version: 10.0 (Office XP)
nach unten

Betrifft: Application.Creator
von: Werner Theis
Geschrieben am: 15.05.2002 - 12:09:51

Hallo,
über die Abfrage des Benutzernamens (Application.UserName) prüfe ich ab, ob der aktuelle User berechtigt ist, die Datei zu bearbeiten. Das geht natürlich schief, wenn der User den PC wechselt und/ oder zwischendurch selbst seinen Benutzernamen ändert (über Extras-Optionen-Allgemein-Benutzername).

Nun gibt es auch die 'Creator'- Eigenschaft:

Sub Creator()
MsgBox Application.Creator
End Sub

Die VB-Hilfe hierzu sagt mir nicht viel - gibt bei mir auch ein anderes Ergebnis

VB-Hilfe:
Gibt die Anwendung, in der dieses Objekt erstellt wurde, als 32-Bit-Ganzzahl zurück. Wurde das Objekt in Microsoft Excel erstellt, gibt die Eigenschaft die Zeichenfolge XCEL zurück, die der Hexadezimalzahl 5843454C entspricht. Long Nur-Lese-Zugriff.

Meine Frage:
Ist die 'Creator'-Abfrage besser geeignet, die Berechtigung des aktuellen Users stabil und dauerhaft abzufragen?

Werner

nach oben   nach unten

Re: Application.Creator
von: Bernthe
Geschrieben am: 15.05.2002 - 12:33:27

Hallo Werner,

vielleicht hilft es Dir schon weiter, wenn Du den Windows-Login-Namen abfragst mit:

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

Private Function NetUser()
Dim s As String
Dim cnt As Long
Dim ret As Long
cnt = 199
s = String$(200, 0)
ret = GetUserName(s, cnt)
If ret <> 0 Then
NetUser = Trim(Left$(s, cnt))
pos = InStr(NetUser, Chr$(0))
If pos > 0 Then
NetUser = Left$(NetUser, pos - 1)
Else
NetUser = NetUser
End If
Else
NetUser = ""
End If
End Function

Damit wird beim Öffnen der Arbeitsmappe der Excel-Username mit dem NetUsername gleichgesetzt.

Private Sub Auto_open()
u = NetUser
If u <> "" Then Application.UserName = u
End Sub

Viele Grüße
Bernthe

nach oben   nach unten

Re: Application.Creator
von: Werner Theis
Geschrieben am: 15.05.2002 - 13:22:23

:-)) das funktioniert ja genial! Danke!
Werner
 nach oben

Beiträge aus den Excel-Beispielen zum Thema "Zur letzten Zeile springen ..."