Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1764to1768
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 - Vlookup

VBA - Vlookup
19.06.2020 09:51:41
Herbert
Hallo meine Lieben,
ich wollte einen Sverweis in VBA anwenden, der als Suchkriterium den Wert einer TextBox nimmt und dann damit den Wert den ich erlangen will aus einer Tabelle die in einem anderen Tabellenblatt ist bekomme.
Hier der Code:
Dim Mitarbeiter_Name As String
Mitarbeiter_Name = WorksheetFunction.VLookup(TextBox_Name.Value, Worksheets("Einstellungen").Sheets("Tabelle9").[AC3:AF55], 4, False)
Vielen Dank schonmal im Voraus!
MfG Herbert!

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA - Vlookup
19.06.2020 09:58:45
Herbert
Hallo,
Ich nochmal.
Sobald der Code ausgeführt wird, kommt der Laufzeitfehler "9".
VBA sagt der Index ist nicht bestimmt.
MfG Herbert!
AW: VBA - Vlookup
19.06.2020 10:05:18
Hajo_Zi
Hallo Herbert,
Zu Deiner Datei kann ich nichts schreiben, was wohl daran liegt das ich nicht auf fremde Rechner schaue.Ich baue keine Datei nach.
Sollte die Datei verlinkt werden?
Wenn du an Stelle einer Demomappe deine Originalmappe hochladen willst, diese aber sensible Daten enthält, kannst du diese Daten
http://www.ms-office-forum.de/forum/showthread.php?t=322895
änderrn.
Bilder lade ich mir nicht runter, da Excel damit nichts anfangen kann.
http://www.excel-ist-sexy.de/bilder-statt-datei/
Hochgeladene Bilder können zwar als solche in Excel importiert werden, sind jedoch bei der Lösung von Problemen nicht sehr hilfreich, da man die eigentlichen Daten nicht ohne große und zeitraubende Umwege direkt in die Tabelle übertragen kann.
Das ist nur meine Meinung zu dem Thema.
Der Befehl sieht erstmal ok aus.

Anzeige
übersehen 2 x Sheets
19.06.2020 10:06:27
Hajo_Zi
AW: übersehen 2 x Sheets
19.06.2020 10:23:35
Herbert
Hallo Hajo,
hab es schon hinbekommen,
der Code an sich funktioniert jetzt, ich musste die Tabelle in dem Tabellenblatt nur anders definieren.
Dim Mitarbeiter_Name As String
Mitarbeiter_Name = WorksheetFunction.VLookup(TextBox_Name.Value, Sheets("Einstellungen").[Tabelle9], 4, False)
Am Ende sieht der komplette Code der ausgeführt wird dann so aus:
Dim Mitarbeiter_Name As String
Mitarbeiter_Name = WorksheetFunction.VLookup(TextBox_Name.Value, Sheets("Einstellungen").[ _
Tabelle9], 4, False)
If CheckBox_auto_Ordner.Value = True Then
If Dir("X:\8. Mitarbeiter\" & Mitarbeiter_Name & "\Achsbilder\Achsbild", vbDirectory) = "" Then
MkDir ("X:\8. Mitarbeiter\" & Mitarbeiter_Name & "\Achsbilder\Achsbild")
MsgBox "Ordner ''Achsbilder'' wurde angelegt!"
Else
MsgBox "Ordner ''Achsbilder'' ist vorhanden!"
End If
End If
End Sub

Anzeige
AW: übersehen 2 x Sheets
19.06.2020 10:27:27
Herbert
Noch mal ich,
ja ich weiß, aber ich kann die Datei hier so nicht hochladen,
weil ich das Datenlimit überschreite mit der Datei.
Ich habe 16 Tabellenblätter wo 14 Tabellenblätter voll mit Formeln sind und alle beinhalten
VBA Formen.
Wodurch ich auf eine größe von 517kb komme und 327kb sind erlaubt zum hochladen, aber trzd. vielen Dank!
MfG Herbert!
AW: VBA - Vlookup
19.06.2020 10:03:14
Beverly
Hi Herbert,
was soll Worksheets("Einstellungen").Sheets("Tabelle9") denn sein? Da sind doch die Namen von 2 Tabellenblättern zusammengezogen - das ist Unsinn. Wo soll denn gesucht werden - in "Einstellungen" oder in "Tabelle9"?


Anzeige
AW: VBA - Vlookup
19.06.2020 10:11:27
Herbert
Hallo,
hab es schon hinbekommen und nein...,
das eine ist das Tabellenblatt: "Einstellungen"
das andere eine Tabelle mit den Mitarbeiter Namen und deren Speicherpfade für das Tool: "Tabelle9"
Am anfang zieht sich das Tool den jeweils an dem Pc eingeloggten User und weiß das dieser an dem Tool ist, dann hat er aber nur z.B.: "Max Mustermann"
Und weil ich mich mit Excel nicht wie ein Profi auskenne, habe ich mit Formeln im Excelblatt in der letzten Spalte dann den Namen so definiert: "Mustermann, Max", weil bei uns die Mitarbeiterordner so gestaltet sind.
Ich weiß es gibt sogesehen einfachere Wege, aber die wären für mich glaube ich ein wenig zu komplex.
Bin zur Zeit mehr an Access VBA und dem Kram, als in Excel.
Hier aber nochmal der funktionierende Code:
Dim Mitarbeiter_Name As String
Mitarbeiter_Name = WorksheetFunction.VLookup(TextBox_Name.Value, Sheets("Einstellungen").[ _
Tabelle9], 4, False)
If CheckBox_auto_Ordner.Value = True Then
If Dir("X:\8. Mitarbeiter\" & Mitarbeiter_Name & "\Achsbilder", vbDirectory) = "" Then
MkDir ("X:\8. Mitarbeiter\" & Mitarbeiter_Name & "\Achsbilder")
MsgBox "Ordner ''Achsbilder'' wurde angelegt!"
Else
MsgBox "Ordner ''Achsbilder'' ist vorhanden!"
End If
End If
End Sub
trzd. Vielen Dank!
MfG Herbert!
Anzeige
AW: VBA - Vlookup : Vorsicht
19.06.2020 10:40:24
peterk
Hallo
WorksheetFunction.VLookup wirft eine Exception wenn nichts gefunden wird, daher muss diese abgefangen werden sonst wird das Programm beendet!
Besser wäre Application.VLookup, hier kann man den Fehler mit IsError(Mitarbeiter_Name) einfach abfragen, dieser Befehl wirft keine Exception (ansonsten gleich).
Peter
AW: VBA - Vlookup : Vorsicht
19.06.2020 10:42:12
Herbert
Hallo,
Danke, werde ich mir merken!
Aber bisher funktioniert es ja.
Trzd. vielen Dank!
MfG Herbert!

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige