Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Application.UserName

Forumthread: Application.UserName

Application.UserName
01.06.2018 08:14:36
Mister-B
Hallo und Guten Morgen,
mit Application.Username lese ich den Namen des aktuellen Nutzers aus. Der Name erscheint im Format Nachname, Vorname". Wie kann ich mit VBA den Namen so umbauen, dass am Ende Vorname.Nachname rauskommt?
Vielen Dank und viele Grüße
Martin
Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: Application.UserName
01.06.2018 08:31:43
Hajo_Zi
Hallo Martin,
Option Explicit
Sub Name_trenen()
Dim StName As String
StName = "Nachname, Vorname"
MsgBox Mid(StName, InStr(StName, ",") + 1) & ", " & Left(StName, InStr(StName, ",") - 1)
End Sub

Beiträge von Werner, Luc, robert, J.O.Maximo und folgende lese ich nicht.
Anzeige
AW: Application.UserName
01.06.2018 09:48:17
japes36
3. Version und ähnlich
Dim Name As String
Name = Vorname(CStr(myuser)) & " " & Nachname(CStr(myuser))
Function Vorname(strName As String) As String
Vorname = Right(strName, Len(strName) - InStrRev(strName, ",", , vbTextCompare))
End Function
Function Nachname(strName As String) As String
Nachname = Left(strName, InStrRev(strName, ",", , vbTextCompare) - 1)
End Function

Anzeige
AW: Application.UserName
01.06.2018 09:51:32
japes36
Dim myuser as String
myuser = "Mustermann, Max"
fehlte natürlich noch
AW: Application.UserName
01.06.2018 08:38:23
ChrisL
Hi
Hier noch die Split-Variante.
Beide Lösungen funktionieren natürlich nur, solange konsequent immer 1 Komma vorkommt.
Sub t()
Dim strInput As String, strOutput As String
Dim arrHilfe As Variant
strInput = "Nachname, Vorname"
arrHilfe = Split(strInput, ", ")
strOutput = arrHilfe(1) & "." & arrHilfe(0)
MsgBox strOutput
End Sub
cu
Chris
Anzeige
;
Anzeige

Infobox / Tutorial

Application.UserName in Excel VBA effektiv nutzen


Schritt-für-Schritt-Anleitung

Um den aktuellen Benutzernamen in Excel VBA auszulesen und das Format von „Nachname, Vorname“ in „Vorname.Nachname“ zu ändern, folge diesen Schritten:

  1. Öffne Excel und drücke ALT + F11, um den VBA-Editor zu öffnen.

  2. Erstelle ein neues Modul, indem du mit der rechten Maustaste auf "VBAProject (DeineDatei)" klickst und "Einfügen" > "Modul" auswählst.

  3. Kopiere den folgenden VBA-Code in das Modul:

    Option Explicit
    
    Sub UserNameUmwandeln()
       Dim userName As String
       Dim formattedName As String
    
       ' Lese den Benutzernamen aus
       userName = Application.UserName
    
       ' Wandle den Benutzernamen um
       formattedName = FormatName(userName)
    
       ' Zeige das Ergebnis an
       MsgBox formattedName
    End Sub
    
    Function FormatName(strName As String) As String
       Dim arr() As String
       arr = Split(strName, ", ")
       FormatName = Trim(arr(1)) & "." & Trim(arr(0))
    End Function
  4. Schließe den VBA-Editor und führe das Makro "UserNameUmwandeln" aus.


Häufige Fehler und Lösungen

Fehler: Wenn der Benutzername nicht im erwarteten Format "Nachname, Vorname" vorliegt, zeigt das Skript möglicherweise einen Fehler an.

Lösung: Stelle sicher, dass der Benutzername im richtigen Format gespeichert ist. Du kannst auch eine Fehlerbehandlung einfügen, um unerwartete Formate abzufangen. Füge dazu den folgenden Code in die Funktion FormatName ein:

If UBound(arr) < 1 Then
    FormatName = "Unbekannt"
    Exit Function
End If

Alternative Methoden

Neben der Verwendung von Application.UserName gibt es auch andere Methoden, um den Benutzernamen in Excel VBA auszulesen. Eine Möglichkeit ist die Verwendung der Umgebungsvariablen:

Dim userName As String
userName = Environ("USERNAME")

Diese Methode kann in Situationen nützlich sein, in denen der Benutzername nicht über die Excel-Einstellungen definiert ist.


Praktische Beispiele

Hier sind einige praktische Beispiele, wie du den Benutzernamen in verschiedenen Szenarien verwenden kannst:

  1. Benutzerbegrüßung: Du kannst den Benutzernamen verwenden, um personalisierte Begrüßungen in deinen Excel-Dokumenten zu erstellen:

    MsgBox "Willkommen, " & Application.UserName & "!"
  2. Namen umdrehen für Dokumentenbenennung: Wenn du Dateien nach dem Benutzernamen benennen möchtest, kannst du den oben genannten Code zum Formatieren des Namens verwenden.


Tipps für Profis

  • Namen validieren: Überprüfe, ob der Benutzername den richtigen Formatierungsanforderungen entspricht, bevor du ihn weiterverwendest.
  • Automatisierung: Integriere die Funktion zur Benutzernamensformatierung in größere Automatisierungsprojekte, um die Benutzerinteraktion zu verbessern.
  • Dokumentation: Halte deine VBA-Module gut dokumentiert, damit andere Benutzer leicht verstehen, wie du die Application.UserName-Funktion und andere VBA-Funktionen verwendest.

FAQ: Häufige Fragen

1. Wie kann ich den Benutzername in Excel ändern?
Der Benutzername wird in den Excel-Optionen unter "Datei" > "Optionen" > "Allgemein" > "Benutzername" festgelegt.

2. Funktioniert dieser Code in allen Excel-Versionen?
Ja, der Code zur Verwendung von Application.UserName funktioniert in allen aktuellen Excel-Versionen, die VBA unterstützen. Achte darauf, dass die Benutzer ihre Namen im richtigen Format eingeben.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige