641 Aufrufe
Gefragt in Tabellenkalkulation von fedjo Experte (2.2k Punkte)
Hallo,
ist es möglich, das von der Application.UserName nur der Vorname in eine  eine Zelle gefügt wird ?

Gruß
fedjo

11 Antworten

0 Punkte
Beantwortet von
Hallo Fedjo :-)

Ein Beispiel!

Gruß Nighty

[code]    If InStr(Application.UserName, " ") > 0 Then
        Cells(1, 1) = Mid(Application.UserName, 1, InStr(Application.UserName, " ") - 1)
    Else
        Cells(1, 1) = Application.UserName
    End If[/code]
0 Punkte
Beantwortet von fedjo Experte (2.2k Punkte)
Hallo Nighty,
danke für die schnelle Antwort.
Das Beispiel funtioniet super.

Noch eine Frage, wie kann ich den Vornamen in eine MsgBox  einfügen?

MsgBox:
Hallo
Vorname
Willkommen in......

Gruß
fedjo
0 Punkte
Beantwortet von
Hallo Fedjo .-)

Wie gewünscht!

Gruß Nighty

[code]   If InStr(Application.UserName, " ") > 0 Then
        Meldung = MsgBox("Hallo " & Mid(Application.UserName, 1, InStr(Application.UserName, " ") - 1) & " willkommen in Excel")
    Else
        Meldung = MsgBox("Hallo " & Application.UserName & " willkommen in Excel")
    End If[/code]
0 Punkte
Beantwortet von fedjo Experte (2.2k Punkte)
Hallo Nighty,
funktioniet.
DANKE

Gibt es da eine Möglichkeit, das die MsgBox ohne "OK-Button" angezeigt wird,
und nach etwa 2 Sekunden geschlossen wird?

Gruß
fedjo
0 Punkte
Beantwortet von
Hallo Fedjo :-)

Dann lieber so .-)

Gruß Nighty

Erstelle im Vbed eine Userform,höhe breite bestimmen
Setze ein Bezeichnungsfeld ein,höhe breite bestimmen

Nun das Makro einsetzen
Vbed>Projectexplorer>Arbeitsmappe
[code]
Private Sub Workbook_Open()
    Dim Meldung As String
    If InStr(Application.UserName, " ") > 0 Then
        Meldung = "Hallo " & Mid(Application.UserName, 1, InStr(Application.UserName, " ") - 1) & " willkommen in Excel"
    Else
        Meldung = "Hallo " & Application.UserName & " willkommen in Excel"
    End If
    UserForm1.Label1 = Meldung
    UserForm1.Show vbModeless
    Application.Wait (Time + TimeSerial(0, 0, 3))
    Unload UserForm1
End Sub[/code]

Datei speichern>schliessen>neu öffnen

Es wird nun beim öffnen der Datei 3(im code leicht zu entdecken und zu ändern) Sekunden eine Nachricht eingeblendet
0 Punkte
Beantwortet von fedjo Experte (2.2k Punkte)
Hallo  Nighty,
danke für die schnelle Antwort,
kann es aber zur Zeit nicht testen,
da Win 10 mit den Updates mir immer Probleme bereitet.

Werde mich später melden.

schönes Wochenende.

Gruß
fedjo
0 Punkte
Beantwortet von fedjo Experte (2.2k Punkte)
Hallo Nighty,
danke noch mal für deine Hilfe,
hab mich aber doch für die MsgBox  entschieden.

Gruß
fedjo

Sub AA()
Dim intAnz As Integer
Dim objShell As Object
Dim lngDauer As Long
Set objShell = CreateObject("WScript.Shell")
lngDauer = 1
iAnzeige = objShell.Popup("Willkommen" & Chr(13) & " in der Wareneingagsliste", _
lngDauer, "Hallo" & " " & (Mid(Application.UserName, 1, InStr(Application.UserName, " ") - 1) & Chr(13)), §vbOKOnly)
End Sub
0 Punkte
Beantwortet von
Hallo Fedjo .-)

Fein das du dich probierst!

Tips bzw Fehler

Variable wird nicht genutzt
Variable unnötig
Variable falsch deklariert
Zuviele Klammern

Fehlende If then Else structur produziert eine
Fehlerausgabe bei Username ohne Trennzeichen

Gruß Nighty
0 Punkte
Beantwortet von fedjo Experte (2.2k Punkte)
Hallo Nighty,
habe den Codet etwas verändert.
Da bei den User immer ein Vor und Nachname mit Komma hinterlegt ist,
benutze ich "(Application.UserName ".
Manchmal sind auch die Vor und Nachnamen vertauscht.

Danke für den Hinweis.

Set objShell = CreateObject("WScript.Shell")
lngDauer = 5
iAnzeige = objShell.Popup(Application.UserName & Chr(13) & Chr(13) & "Willkommen" & Chr(13) & " in der Wareneingagsliste", _
lngDauer, "Hallo", §vbOKOnly)

Gruß
fedjo
0 Punkte
Beantwortet von
Hallo Fedjo .-)

Wenn du eine Vornamen Namensliste(txt Format) aus dem Internet besorgst
köönte ich da was schreiben bei bedarf!
Dann sollten es aber schon paar Tausend sein ,zum raussuchen :-)

Als Ablage seperate Txt oder auch eine ausgeblendete Excelspalte

Gruß Nighty
...