Verwenden Sie SVERWEIS in einen dynamischen Bereich mit VBA

Ich versuche zum einrichten von VB also kann ich einen SVERWEIS auf einen dynamischen Wertebereich. Werde es so beginnen Sie immer am gleichen Ort, aber es kann am Ende weiter unten, basierend auf was auch immer Wert in H4.

EDIT: Hier der code und es funktioniert.

Danke Alex!

Public Sub State()

    Dim refRng As Range, ref As Range, dataRng As Range
    Dim i As Variant
    Dim count As Integer
    i = Sheet2.Range("H1").Value
    i = i + 3 'offset of when to start

    Set refRng = Sheet2.Range("D8:" & Cells(8, i).Address) '//horizontal range of look up values
    Set dataRng = Sheet13.Range("A:C") '//data block you want to look up value in

    For Each ref In refRng
    ref.Offset(1, 0) = Application.WorksheetFunction.VLookup(refRng, dataRng, 2, True)
    Next ref
End Sub
  • Was macht WorksheetFunction.SVERWEIS zurückgeben? und was ist ref.Offset zu tun? Ich dachte, der ref war, wo meine Ausgabe gehen würde, aber es scheint nicht, wie das der Fall ist, wenn ich mit ihm spielen.
  • Bitte deutlicher erklären, was deine Daten Aussehen, und was Sie erwarten, um mit einigen Probe-Eingänge.
  • WorksheetFunction.VlookUp gibt den Wert, den Sie versuchen, zu finden, basierend auf Werte in der Zeile beginnend bei D8. Offset legt einfach den Rückgabewert der Zeile unten D8 etc.
InformationsquelleAutor | 2013-08-27
Schreibe einen Kommentar