Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1044to1048
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

VBA-Sverweis mit UserName

VBA-Sverweis mit UserName
05.02.2009 12:47:52
Alex
Hi,
mit diesem Code-Teil wird der User, welcher in meiner Datei etwas verändert verewigt. :-)
Select Case Target.Column
Case 14, 17, 20, 22, 24, 25, 29, 31, 34, 38, 40, 47, 49, 51, 53, 55, 56
Sheets("Bearbeiternachweis").Range(Target.Address).Value = Application.UserName & " - " & Date
nun möchte ich diesen UserName aber in einen dazugehörigen Namen wandeln, den ich in der Datei "Basis" aufgeführt habe.
Pfad: "'Z:\EHu_1\Polizeitraining\Basisdaten\[Basis.xls]Tabelle1'!K5:N200, 4, False)"
An der Stelle "Application.UserName" müsste dann der VBA Sverweis stehen, mit Suchkriterium UserName.
Könnt ihr mir helfen, wie man das schreiben muss?
Vielen Dank
Alex

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
geht es so?
05.02.2009 16:00:53
Tino
Hallo,
versuche es mal hiermit.
Sub test()
Dim sUser As String, sFormel As String, sName
Dim rZelle As Range

'ich würde diesen verwenden, angemeldeter Username 
sUser = Environ$("USERNAME")
'Zelle 
Set rZelle = Sheets("Bearbeiternachweis").Range(Target.Address)
'Userbname + Datum 
rZelle.Value = sUser & " - " & Date
'Sverweisformel 
sFormel = "VLOOKUP(""" & sUser & """,'Z:\EHu_1\Polizeitraining\Basisdaten\[Basis.xls]Tabelle1'!R5C11:R200C14,4,FALSE)"
'Name lesen 
sName = ExecuteExcel4Macro(sFormel)
'Name in Zelle daneben schreiben 
rZelle.Offset(0, 1) = IIf(IsError(sName), "nicht gefunden", sName)


End Sub


Gruß Tino

Anzeige
@Tino:geht so! nur das Datum nicht
06.02.2009 12:23:43
Alex
Hi Tino,
läuft so, nur das Datum schreibt er nicht.
Ich hatte weiterhin vergessen zu erwähnen, dass "Bearbeiternachweis das zweite Sheet ist.
Verändert wird in Sheet "Rettungsschwimmen".
Geht aber trotzdem (durch die Ansprache: Sheets ("Bearbeiternachweis")).
Nur das Datum nicht.
Danke für deine Mühe, konnte gestern nicht mehr antworten (Feierabend).
Alex
@Tino: geht so! nur das Datum nicht
06.02.2009 12:29:28
Alex
Hi Tino,
Danke für deine Mühen,
Hatte vergessen das "Bearbeiternachweis" ein zweites Sheet ist.
Verändert wird in Sheet "Rettungsschwimmen". Läuft aber trotzdem so (durch die Ansprache mit Sheets ("Bearbeiternachweis").
Nur das Datum wird nicht mit angezeigt.
Danke nochmal,
Alex
Anzeige
Problem gelöst! Danke!o.w.T.
06.02.2009 12:37:13
Alex
.
und was war es? oT.
06.02.2009 12:46:18
Tino
Entschuldige!Natürlich m.T.
06.02.2009 16:07:00
Alex
Hi Tino,
letzte Zeile des Codes nicht so:
rZelle.Offset(0, 0) = IIf(IsError(sName), "nicht gefunden", sName)
sondern:
rZelle.Offset(0, 0) = IIf(IsError(sName), "nicht gefunden", sName & " - " & Date)
Kleinigkeit, sogar für mich.
hier nochmal der Gesamt-Code (steht im Modul von "Rettungsschwimmen")

Private Sub Worksheet_Change(ByVal Target As Range)
Dim sUser As String, sFormel As String, sName
Dim rZelle As Range
'ich würde diesen verwenden, angemeldeter Username
sUser = Environ$("USERNAME")
'Zelle
Set rZelle = Sheets("Bearbeiternachweis").Range(Target.Address)
'Userbname + Datum
rZelle.Value = sUser & " - " & Date
'Sverweisformel
sFormel = "VLOOKUP(""" & sUser & """,'C:\Dateipfad)"
'Name lesen
sName = ExecuteExcel4Macro(sFormel)
'Name in Zelle daneben schreiben
rZelle.Offset(0, 0) = IIf(IsError(sName), "nicht gefunden", sName & " - " & Date)
End Sub


Danke nochmal, Gruss
Alex

Anzeige
AW: Entschuldige!Natürlich m.T.
06.02.2009 17:12:45
Tino
Hallo,
ach so, der Wert soll in der gleichen Zelle stehen, dann brauchen wir nicht offset gehen.
Ich würde auch anstatt nicht gefunden, den Anmeldenamen eintragen,
weil mit allein nicht gefunden kann man nicht viel anfangen.

Private Sub Worksheet_Change(ByVal Target As Range)
Dim sUser As String, sFormel As String, sName
Dim rZelle As Range
'ich würde diesen verwenden, angemeldeter Username
sUser = Environ$("USERNAME")
'Zelle
Set rZelle = Sheets("Bearbeiternachweis").Range(Target.Address)
'Sverweisformel
sFormel = "VLOOKUP(""" & sUser & """,'C:\Dateipfad....)"
'Name lesen
sName = ExecuteExcel4Macro(sFormel)
'Name in Zelle schreiben
rZelle = IIf(IsError(sName), sUser & " - " & Date, sName & " - " & Date)
End Sub


Anzeige

305 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige