Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1312to1316
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Environ("Username") in Variable

Environ("Username") in Variable
23.05.2013 18:15:26
Bubble
Hallo Exelperten,
mit
Sub namen_ermitteln()
MsgBox (Environ("Username"))
End Sub

erhalte ich in Exel 2007 den Anmeldenamen des Users, der die Arbeitsmappe öffnet. Nun wollte ich das ganze etwas abändern und erreichen das bei einem bestimmten Anmeldenamen ein Begrüßungstext in der MsgBox steht. Versucht habe ich das mit
Private Sub Workbook_Open()
'autostart beim öffnen der Exelmappe
Dim strName As String
strName = Environ("Username").Value
If strName = "mustermann" Then
MsgBox "Hallo Max, viel Spaß bei der Arbeit", vbExclamation, "Begrüßung"
Else
MsgBox "Hallo, Dich kenne ich nicht!", vbExclamation, "Begrüßung"
End If
End Sub

Momentan bekomme ich dieser Variante immer einen Laufzeitfehler 425 (Objekt erforderlich), wenn ich dann auf Debuggen gehe, wird
strName = Environ("Username").Value

gelb hinterlegt. Da ich VBA nur aus dem Makrorecorder kenne, habe ich über die Hilfe versucht mir das selbst zusammen zu bauen. In der Zeile mit Dim am Anfang glaube ich strName als Variable mit Textinhalt zu definieren und in der gelb hinterlegten Zeile weise ich der Variablen einen Wert zu, nämlich den Inhalt von Environ("Username"). Achso und das ganze steht unter "Diese Arbeitsmappe", damit es automatisch beim start ausgeführt wird.
Wo liegt der oder die Fehler?
Gruß
Bubble

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Environ("Username") in Variable
23.05.2013 18:16:26
Hajo_Zi
warum Value?

AW: Environ("Username") in Variable
23.05.2013 18:52:26
Matze
Hallo Zusammen,
..na Hajo, ob Ihm das weiterhilft?
@ Bubble ?
War mal irgendwo hier im Forum, eine Lösung mit Array
In diese Arbeitsmappe einfügen:
Option Explicit
Private Sub Workbook_Open()
Dim Berechtigt()
Berechtigt = Array("Otto", "Herbert", "Ede", "Mustermann")
If Not IsError(Application.Match(Environ("Username"), Berechtigt, 0)) Then
MsgBox "Sie Sind berechtigt - viel Spaß !"
Else
MsgBox "SKeine Berechtigung ! - Mappe ohne speichern schliessen!", , " Keine  _
Berechtigung!"
ThisWorkbook.Close False
End If
End Sub
Matze

Anzeige
WICHTIG vergessen,...
23.05.2013 19:02:32
Matze
Hallo Bubble ,
dein Anmeldename sollte auf Jedenfall da sein, sonst hast du keine Chance da wieder ran zu kommen.
Oder , Frage an die Profis, geht das doch noch, wenn im Array der Username nicht dabei ist, die Datei zu öffnen?
Ich empfehle die Datei auch mit einem Passwort zu speichern
"Speichern unter " Allgemeine Optionen,....
Matze

AW: WICHTIG vergessen,...
24.05.2013 09:00:45
Klaus
Oder , Frage an die Profis, geht das doch noch, wenn im Array der Username nicht dabei ist, die Datei zu öffnen?
Hallo Matze,
klar geht das dann noch. Einfach ohne Makros öffnen.
Grüße,
Klaus M.vdT.

Anzeige
AW: Environ("Username") in Variable
23.05.2013 19:07:07
Bubble
@Matze Es geht nicht darum jemanden auszusperren, mit der Mappe arbeiten eh nur 3 Leute und nun bin ich das ganze schon am erweitern mit elseif um jedem der Drei eine personalisierte Begrüßung zu geben.
Aber ich habe mir den Code mal gespeichert, ist ja eine primitive Zugangskontrolle, so lang makros aktiviert und geladen werden.

AW: Environ("Username") in Variable
23.05.2013 18:59:28
Bubble
Ähm, ja, hmmmm, also, naja, ..., so genau weis ich das auch nicht, dachte .value gehört zu der Definition dazu.
Wie gesagt ich kenne VBA nur aus dem Makrorecorder, der VBA-F1 Hilfe und bissi Goggle und viel Herber Forum. Aber so ist glaub ich Learning by Doing und dank Euch ganzen netten Forumsusern kommt man auch aus Sackgassen wieder raus.
Jetzt, da ich das .Value entfernt habe, funktioniert das Makro einwandfrei.
Vielen Dank Hajo
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige