AW: Perfekt, neues Problem
13.01.2022 11:00:59
ChrisL
Hi Herbert, hi Yal
Irgendwie habe ich den Faden verloren, aber ich versuche mal alles auf einmal abzufackeln :)
Die VLookup-Eigenschaft des WorksheetFunction-Objektes kann nicht zugeordnet werden
WorksheetFunction.VLookup(cbox_kennzeichen.Value, Worksheets("Fuhrpark").Range(Location), 2, 0).Value
Hier müsste vermutlich nur das Value am Ende gelöscht werden.
Es bleibt an der Stelle die Frage von Herbert offen: sicherstellen, dass diese benannte Bereich sich mit jede neuer Zeile in der aktiven Tabelle sich ergänzt.
Mit einer "intelligenten" Tabelle ist dies bereits gegeben. Im VBA Code müsste man dann den Bereichsnamen verwenden, was ganz generell sinnvoll ist.
der Name der aktive Tabelle in einem VLookup reinzubringen
Ich gehe davon aus, dass wir mit definierten Namen (Namensmanager) arbeiten. Hierbei ist zu beachten, dass bestimmte Namen für die ganze Mappe definiert werden können oder der Name ist nur für ein bestimmtes Blatt gültig. Bei Variante 1 braucht es keinen Bezug zum Blatt und Range("Name") ohne Blattbezug reicht, weil dieser Bezug bereits in der Namensdefinition hergestellt wurde. Diese Variante ist für "intelligente" Tabellen Standard. Im anderen Fall könnte man dann auch noch den Blattnamen einbeziehen Worksheets(xy).Range("Name"), aber dies wird hier m.E. nicht benötigt.
Randbemerkung, das Beispiel Makro 3 liesse sich noch optimieren:
Sub Makro3()
With Worksheets("Tabelle1").Range("J2:J7").Offset(0, 1)
.FormulaR1C1 = "=VLOOKUP(RC[-1],Tabelle2,2,0)"
.Value = .Value
End With
End Sub
cu
Chris