Einführung "VBA mit Microsoft Office"

Code Snippet "VBA Excel"

Zweidimensionaler SVERWEIS

Anhand von Suchargument für die oberste Zeile und für die linke Spalte wird ein Wert zurückgegeben

Function MeinSVerweis( _
  suchargument_zeile, suchargument_spalte, suchmatrix As Range)
  
  Dim intSpalte 'As Integer
  Dim objSuchzeile As Range
  Dim intStartZeile As Integer
  Dim intEndZeile As Integer
  Dim intStartSpalte As Integer
  Dim intEndSpalte As Integer
  
  intStartZeile = suchmatrix.Cells(1).Row
  intEndZeile = suchmatrix.Cells(suchmatrix.Count).Row
  
  intStartSpalte = suchmatrix.Cells(1).Column
  intEndSpalte = suchmatrix.Cells(suchmatrix.Count).Column
  
  'Suchzeile für VERGLEICH-Funktion aus Matrix extrahieren
  Set objSuchzeile = Range(Cells(intStartZeile, intStartSpalte), _
    Cells(intStartZeile, intEndSpalte))
  
  'Match entspricht der Funktion VERGLEICH
  intSpalte = Application.WorksheetFunction _
    .Match(suchargument_zeile, objSuchzeile, 0)
  
  'Aufruf von SVERWEIS
  MeinSVerweis = Application.WorksheetFunction _
    .VLookup(suchargument_spalte, suchmatrix, intSpalte, 0)
End Function