返回列表 上一主題 發帖

[發問] 請問Vlookup+left 巢狀函數 值出不來 出現 #N/A 怎麼辦? (已解決)

EXCEL 解釋
LEFT()  &  LEFTB()
LEFT 傳回一文字字串中第一個字元或字元組,以您指定字元組的數值為準。
LEFTB 傳回一文字字串中第一個字元或字元組,以您指定字元組的數值為準。這個函數是使用在二位元的字元組。
語法
LEFT(text,num_chars)
LEFTB(text,num_bytes)
Text    為含有所要選錄文字之字串。
Num_chars 指定您要 LEFT 選錄的字元數。
num_chars 必須大於或等於零。
如果 num_chars 大於文字的長度,LEFT 將傳回所有的文字。
如果 num_chars 被省略了,則假定其值為 1。
Num_bytes 指定您要 LEFTB 選錄的字元數 (依據位元組)。

VLOOKUP()
在一陣列或表格的最左欄中尋找含有某特定值的欄位,再傳回同一列中某一指定儲存格中的值。如果用來比對的數值位於您所要尋找的資料之左邊欄時,就必須使用到 VLOOKUP 函數,而非 HLOOKUP 函數。
VLOOKUP 中的 V 表示「Vertical」之意。
語法  VLOOKUP(lookup_value,table_array,col_index_num,range_lookup)
Lookup_value    是您打算在陣列的最左欄中搜尋的值。Lookup_value 可以是數值、參照位址或文字字串。
Table_array    是要在其中搜尋的資料表格。通常是儲存格範圍的參照位址或類似資料庫或清單的範圍名稱。
如果 range_lookup 為 TRUE,則 table_array 第一欄的值必須以遞增次序排列:...、-2、-1、0、1、2、...、A-Z、FALSE、TRUE;否則 VLOOKUP 無法給予正確的值。如果 range_lookup 為 FALSE,則 table_array 不須事先排序。
您可以選擇 [資料] 功能表上的 [排序] 命令,選取 [遞增],讓值依遞增順序排列。
Table_array 第一欄裡的值,可以是文字、數字或邏輯值。
字母的大小寫被視為是相同的。
Col_index_num    是個數值,代表所要傳回的值位於 table_array 中的第幾欄。如果 col_index_num 引數值為 1,傳回在 table_array 第一欄的值,如果 col_index_num 引數值為 2,傳回 table_array 第二欄的值,依此類推。如果 col_index_num 小於 1,則 VLOOKUP 傳回錯誤值 #VALUE!;如果 col_index_num 超過 table_array 總欄數,則 VLOOKUP 傳回錯誤值 #REF!。
Range_lookup    是個邏輯值,用來指定 VLOOKUP 要尋找完全符合或部分符合的值。當此引數值為 TRUE 或被省略了,會傳回部分符合的數值;也就是說,如果找不到完全符合的值時,會傳回僅次於 lookup_value 的值。當此引數值為 FALSE 時,VLOOKUP 函數只會尋找完全符合的數值,如果找不到,則傳回錯誤值 #N/A。
註解
如果 VLOOKUP 函數找不到 lookup_value,且 range_lookup 為 TRUE 時,則使用僅次於 lookup_value 的值。
如果 lookup_value 比 table_array 第一欄中的最小值還小,則 VLOOKUP 傳回錯誤值 #N/A。
如果 VLOOKUP 函數找不到 lookup_value,且 range_lookup 為 TRUE 時,則 VLOOKUP 傳回錯誤值 #N/A。
益謝兒

TOP

回復 6# sax868
大家一起貢獻己能
EXCELVBA 會越來越貼近
前天去沙鹿區李眼科檢查視力,李英麒醫師,空檔時也自己以寫多頁VBA 
他的程式我喵了一下,程式每行指令 後面督有註解
功能作業交代非常清楚
真的好厲害,我聽說這位醫師是台大醫院眼科頂尖醫師群裡的一員,回鄉照顧鄉民。
那個精神只得學習
益謝兒

TOP

        靜思自在 : 唯其尊重自己的人,才更勇於縮小自己。
返回列表 上一主題