Jak korzystać z funkcji xlookup w vba (z przykładami)


Aby wykonać XLOOKUP przy użyciu języka VBA, możesz użyć następującej podstawowej składni:

 Sub Xlookup()
    Range(" F2 ").Value = WorksheetFunction.Xlookup(Range(" E2 "), Range(" A2:A11 "), Range(" C2:C11 "))
End Sub

Ten konkretny przykład szuka wartości w komórce E2 w zakresie A2:A11 i znajduje pasującą wartość w zakresie C2:C11 , a następnie przypisuje wynik do komórki F2 .

Poniższy przykład pokazuje, jak zastosować tę składnię w praktyce.

Przykład: Jak używać XLOOKUP w VBA

Załóżmy, że mamy w programie Excel następujący zbiór danych zawierający informacje o różnych koszykarzach:

Załóżmy, że chcemy przeszukać zbiór danych pod kątem nazwy zespołu „Kings” i zwrócić odpowiednią wartość w kolumnie asyst.

W tym celu możemy utworzyć następujące makro:

 Sub Xlookup()
    Range(" F2 ").Value = WorksheetFunction.Xlookup(Range(" E2 "), Range(" A2:A11 "), Range(" C2:C11 "))
End Sub

Kiedy uruchomimy to makro, otrzymamy następujące dane wyjściowe:

Makro poprawnie zwraca wartość 3 asyst dla królów.

Jeśli zmienimy nazwę zespołu w komórce E2 , a następnie ponownie uruchomimy makro, poprawnie znajdzie ono wartość pomocniczą dla nowej nazwy zespołu.

Załóżmy na przykład, że zmieniamy nazwę drużyny na „Warriors” i ponownie uruchamiamy makro:

Makro poprawnie zwraca wartość 4 asyst dla Wojowników.

Pamiętaj, że możesz także dodać opcjonalny czwarty argument do funkcji Xlookup , aby określić wartość, która powinna zostać wyświetlona, jeśli nie zostanie znalezione dopasowanie.

Na przykład możesz użyć poniższego makra, aby uruchomić funkcję XLOOKUP i zwrócić wartość „Brak”, jeśli nie zostanie znalezione dopasowanie:

 Sub Xlookup()
    Range(" F2 ").Value = WorksheetFunction.Xlookup(Range(" E2 "), Range(" A2:A11 "), Range(" C2:C11 "), "None")
End Sub

Możesz zastąpić „Brak” dowolną wartością, którą chcesz wyświetlić.

Dodatkowe zasoby

Poniższe samouczki wyjaśniają, jak wykonywać inne typowe zadania w VBA:

VBA: Jak korzystać z dopasowywania indeksów
VBA: jak korzystać z funkcji WYSZUKAJ.PIONOWO
VBA: Jak korzystać z funkcji WYSZUKAJ.PIONOWO z innego arkusza

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *