Microsoft Excel

Herbers Excel/VBA-Archiv

Benutzer in Zelle AN5 eintragen

Betrifft: Benutzer in Zelle AN5 eintragen von: Frederic Anders
Geschrieben am: 19.08.2004 08:47:34

Hallo an alle,

ich möchte, dass in einer Excel-Datei der Benutzername von der Windows-Anmeldung ermittelt und in die Zelle AN5 eingetragen wird, damit immer ersichtlicht ist, wer diese Datei zuletzt bearbeitet hat.
Gibts sowas als Makro?

Gruß
Frederic

  


Betrifft: AW: Benutzer in Zelle AN5 eintragen von: DieterB
Geschrieben am: 19.08.2004 09:02:20

Das könnte es sein:

Sub eigen()

Application.ScreenUpdating = False
Worksheets("Tabelle1").Activate

Range("A1:Z1").Select
Selection.Font.Bold = True

With Selection
        .HorizontalAlignment = xlCenter
        .VerticalAlignment = xlBottom
        .WrapText = False
        .Orientation = 0
        .AddIndent = False
        .ShrinkToFit = False
        .MergeCells = False
    End With
    
Range("AL5") = "Zuletzt geändert"
Range("AN5") = ActiveWorkbook.BuiltinDocumentProperties.Item(7)

Application.ScreenUpdating = True

End Sub



  


Betrifft: AW: Benutzer in Zelle AN5 eintragen von: OttoH
Geschrieben am: 19.08.2004 09:03:09

Hallo Frederic,

versuch's mal it folgender Routine:

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

Sub yyy()

    [AN5]= GetUser()

End Sub


Function GetUser() As String
  Dim lpUserID As String
  Dim nBuffer As Long
  Dim Ret As Long
  lpUserID = String(25, 0)
  nBuffer = 25
  Ret = GetUserName(lpUserID, nBuffer)
  If Ret Then
    GetUser$ = lpUserID$
  End If
End Function



Sobald Du die Routine yyy startest, wird der Username in AN5 eingetragen.
Evtl. kannst Du die Routine vom Ereignis WORKBOOK_OPEN aufrufen lassen, dann geschieht es automatisch.

Gruß OttoH


  


Betrifft: AW: Benutzer in Zelle AN5 eintragen von: geri
Geschrieben am: 19.08.2004 09:10:22

noch eine Variante
in dieses Blatt einfügen wo du benötigst

Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Address = "$AN$5" Then Exit Sub
    Range("AN5") = "Geänd. von " & _
        Application.UserName & _
        " am " & _
        Format(Date, "dd.mm.yy")
   
End Sub


wird nur eingetragen wenn Änderung statfindet, sonst bleibt alte USER

gruss geri


 

Beiträge aus den Excel-Beispielen zum Thema "Benutzer in Zelle AN5 eintragen"