VBA 中的 VLOOKUP 函式

Iqra Hasnain 2024年2月15日
VBA 中的 VLOOKUP 函式

我們將通過示例介紹如何在 VBA 中使用 VLOOKUP

在 VBA 中使用 VLOOKUP() 函式

在 Excel 中,我們可以使用 VLOOKUP() 函式在陣列中查詢一個值並從另一列返回其可比較的值。我們要檢視的值應該存在於第一列中。

我們還必須指出我們的要求,無論我們想要完美匹配還是最接近價值的匹配。我們可以使用工作表訪問 VLOOKUP

語法:

# VBA
VLOOKUP(search_value,range,returnIndex_num,[lookupRange])

search_value 表示我們要搜尋的值。range 是我們正在處理的範圍,returnIndex_num 是我們想要返回值的列號,lookupRange 表示匹配是完美的還是接近的。

lookupRange 有兩種可能性,可以是 truefalse,或 01

程式碼:

#VBA
Application.WorksheetFunction.vlookup(search_value,range,returnIndex_num,[lookupRange])

讓我們舉個例子,並嘗試從中找到一些資料。我們的資料包含自由職業者的 ID姓名提交的專案

VBA 中 vlookup 函式的樣本資料

如果我們要搜尋由具有 ID 4 的自由職業者完成的專案,我們必須使用 VBA 中的 vlookup() 函式找到它們。

首先,我們通過按 ALT + F11 鍵開啟 VBA 編輯器,然後從 Insert > Module 建立一個新模組。接下來,我們建立一個新的子 lookForProj() 併為 freelancer_idprojects completed 分配變數。

我們還將設定我們想要找到自由職業者的範圍。

程式碼:

#VBA
Sub lookForProj()
Dim freelancer_id As Long
Dim projects As Long
freelancer_id = 4
Set newRange = Range("A2:C6")
projects = Application.WorksheetFunction.VLookup(freelancer_id, newRange, 3, False)
MsgBox "Freelancer with ID: " & freelancer_id & " completed " & projects & " projects"
End Sub

輸出:

在 VBA 中使用 vlookup 函式

讓我們再舉一個例子。考慮包含產品名稱及其銷售額的資料,並假設我們已將這些資料新增到列 BC 中。

我們想通過使用 vlookup() 函式來搜尋產品的銷售數量。首先,讓我們從 Insert > Module 建立一個新模組並建立一個新子 lookForSales()

我們將為 product_idsales 分配變數,並設定我們想要找到自由職業者的範圍。

程式碼:

# VBA
Sub lookForSales()
Dim product_id As Long
Dim sales As Long
product_id = 2
Set newRange = Range("A2:C6")
sales = Application.WorksheetFunction.VLookup(product_id, newRange, 3, False)
MsgBox "Product with ID: " & product_id & " sold " & sales & " times"
End Sub

輸出:

在 VBA 中使用 vlookup 函式第二例

相關文章 - VBA Function