簡體   English   中英

Excel VLookup() 工作表函數中的錯誤 2042(“N/A”)

[英]Error 2042 ("N/A") in Excel VLookup() Worksheet Function

需要一些幫助來找出奇怪的 VBA VLOOKUP Type Missmatch錯誤。 代碼真的很簡單,因為 sss0 是一個隨機數,我想要的只是在一個范圍內找到最接近的值(表 'BMD_CDF', Range("A2:B999"))。 在電子表格中,我已經將 Sheets("BMD_CDF").Range("A2:B999") 的格式設置為科學...

Dim LookUp_Range As Range
Dim sss0 As Double
Set LookUp_Range = Sheets("BMD_CDF").Range("A2:B999")

sss0=Application.WorksheetFunction.Max(Rnd(), 0.005)
Debug.Print Application.VLookup(sss0, LookUp_Range, 2, 0)

錯誤信息

在此處輸入圖片說明

什么范圍看起來像

在此處輸入圖片說明

Error 2042 (“N/A”)似乎是由 Excel 工作表函數返回的值引起的:

Aplication.WorksheetFunction.Max(Rnd(), 0.005)

始終小於 1 的值永遠不會進入column A指定的值范圍 (>6)。 出於測試目的,嘗試將其替換為Column A中該范圍內的任何數字,例如, sss0 =6.15並修改 VLOOKUP() 語句如下:

Debug.Print Application.VLookup(sss0, LookUp_Range, 2, 1)

(其中 1 代表邏輯TRUE )以使其工作,即根據您的定義找到最接近的值(不完全匹配)。

希望這可能會有所幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM