Richtige Verwendung von Index-Formel in VBA

Bild

Betrifft: Richtige Verwendung von Index-Formel in VBA
von: Mike
Geschrieben am: 06.11.2015 12:48:10

Hallo,
ich möchte eine Index-Formel in einem Event verwenden.
In Excel funktioniert die Formel aber mir ist nicht klar, wie ich dieselbe Formel in VBA verwenden kann.
Kann mir jemand weiterhelfen ?
Mein Versuch:

txtRef = INDEX(Worksheets(9)!B:B;MATCH(1;Worksheets(9)!A:A;0))
Vielen Dank im Voraus,
Mike

Bild

Betrifft: AW: Richtige Verwendung von Index-Formel in VBA
von: Mike
Geschrieben am: 06.11.2015 13:03:38
...hab die Lösung selber gefunden - danke...

Bild

Betrifft: AW: Richtige Verwendung von Index-Formel in VBA
von: Rudi Maintaire
Geschrieben am: 06.11.2015 13:03:47
Hallo,
txtRef = Application.INDEX(Worksheets(9).Range("B:B"),Application.MATCH(1,Worksheets(9).Range("A:A"),0))
Aber warum nicht per SVERWEIS()?
txtRef = application.vlookup(1,Workshets(9).Range("A:B"),2,0)
Gruß
Rudi

Bild

Betrifft: AW: Richtige Verwendung von Index-Formel in VBA
von: Mike
Geschrieben am: 06.11.2015 13:26:53
Hallo Rudi,
vielen Dank - der Ansatz gefällt mir. :-)
Noch ein paar Fragen dazu:
1) Brauche ich hier nicht noch WorksheetFunction vor der eigentlichen Formel ?
2) Wie definiere ich hier txtRef korrekt ? Dim txtRef As String ?
Gruß,
Mike

Bild

Betrifft: AW: zur Frage
von: hary
Geschrieben am: 06.11.2015 13:58:31
Moin
Zu 1.
lies hier:
https://www.herber.de/forum/archiv/1144to1148/1145722_VB_Funktion_fuer_WorksheetFunctionMatch.html#1145774
Zu 2.
Kommt darauf an was du mit dem Rueckgabewert machen moechtest. Wenn's 'ne Zahl fuer berechnungen ist dann waere Long oder Double besser.
gruss hary

 Bild

Beiträge aus den Excel-Beispielen zum Thema "Richtige Verwendung von Index-Formel in VBA"