excel中vlookup的問題

2022-05-22 18:25:04 字數 6467 閱讀 5900

1樓:余易綠

=vlookup(a2,sheet2!a:b,2)

解釋:=vlookup(需要查詢的值a2,所在區域,需返回值所在的列數,邏輯)

對於補充的問題:

=vlookup(a2,b:c,2)

語法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、…、-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 的最大數值;如果 range_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 為 false,函式 vlookup 返回錯誤值 #n/a。

2樓:匿名使用者

在別的引數運用沒錯的前提下,你把true變成false試一試

3樓:

1、被查詢列的格式必須統一。

2、公式單元格的格式用設為常規。

4樓:匿名使用者

問題描述比較粗,請詳細點,謝謝!

詢問excel中函式vlookup的單元格格式問題!

5樓:釋普定法師

大致原因是文字中同時包含字元和數字,字串又太長,在進行匹配時可能會產生錯誤。解決辦法,如下面的公式:

=vlookup(a1&"*",b:c,2,0)在待匹配的引用單元格與萬用字元「*」號合併,輸入:

a1&"*"

強制以文字方式進行匹配,這樣就沒有問題了。

你可以試一下。

6樓:芮城老憨

可能是單元格字串前後有空格了,你可以用len()計算一下這兩個單元格字元的長度,但它們是不是相等。

7樓:談竹辛啟

1、你a列所有的資料應該設定成數字格式,在文字格式狀態下vlookup是不能用的

2、公式為:=vlookup(a3,sheet2!$a:$b,2,0)

8樓:

我用vlookup時也出現過這種情況,我把整個文件的字型全設定成arial,這樣就可以了.

9樓:

請看下字元後面有空格沒?

excel中vlookup函式引數的問題?

10樓:匿名使用者

①引數4:

精確:false、0、忽略;

近似:true、1。

②只能利用左邊查詢右邊,

如果要倒過來,可以利用if函式,構建乙個二維陣列;

③使用其它函式。

關於excel檔案使用vlookup函式時格式的問題。

11樓:來盤菜刀

可能表a或表b中有不可見字元,可以用clean()函式清除不可見字元後再試試。

12樓:s今生緣

根據你的描述,函式出現這樣的錯誤值,是由於你兩個表中的資料不同造成的。

如果不是含有空格的話,那就說明你表中的資料是數字型的,而它們的格式乙個是文字型,乙個是數值型。如果不是你自己輸入的資料或者是先設定了文字格式,再輸入的資料,直接改格式,是改不回數值型的,這時要通過其它辦法來轉。

你先看看這些資料的左上角有沒有乙個綠色小三角,有就是文字型的。

excel中vlookup函式總是出錯,字母能查到,數字就不行

13樓:神話小白

核心問題是因為你用來對比單元格內的「內容」,和目標資料列中的「內容」字元不夠明確匹配, 解決方式,將他們都設定為「文字格式」

批量設定當前列的格式為文字的快速方法(wps的方式,excel類同吧):

1、選中目標單元格所在的列(由於查詢值通常在1列內);

2、在選單「資料」-「分列」,進入到第三步的時候可以看到需要選擇的型別,設定為「文字」即可

14樓:匿名使用者

b7單元格公式改成

=vlookup(--a7,c$6:d$40,2,)或a7單元格公式改成

=--mid(c3,2,1)

不對,還有字母的,公式要改成

b7=vlookup(if(count(--a7),--a7,a7),c$6:d$40,2,)或a7

=if(count(--mid(c3,2,1)),--mid(c3,2,1),mid(c3,2,1))

15樓:錯落的情緣

那是因為你查詢值1,2,3,4的右邊的單元格的格式問題,就是放置結果的那一列的單元格的格式不對,前面幾個是文字格式,輸入的公式不能運算

excel**的vlookup函式為什麼有的匹配不出來

16樓:匿名使用者

這是由於提問中兩個**的a列的數字格式是不一樣的,乙個是數值格式的數字,乙個是文字格式的數字。只要把兩列的格式設定為一樣,因為都是數字,建議都設定為數值格式那麼原來提問的公式就可以用了。

如不想改格式的,也可以把公式改為這樣就能用了:

=if(a2="","",text(vlookup(--a:a,sheet1!a:b,2,),"e年m月d日"))

如果有些資料可能在sheet1的a列中是沒有的,可以加入防錯判斷,遇上這情況時,公式返回空白,以上公式返回的是#n/a錯誤值。

=if(countif(sheet1!a:a,a2),text(vlookup(--a:a,sheet1!a:b,2,),"e年m月d日"),"")

17樓:excel秘籍

excel:為什麼你vlookup總是匹配錯誤?這裡給你解答

18樓:侍芹

可能是因為由於提問中兩個**的a列的數字格式是不一樣的,乙個是數值格式的數字,乙個是文字格式的數字。只要把兩列的格式設定為一樣,因為都是數字,建議都設定為數值格式那麼原來提問的公式就可以用了。

如不想改格式的,也可以把公式改為這樣就能用了:

=if(a2="","",text(vlookup(--a:a,sheet1!a:b,2,),"e年m月d日"))

如果有些資料可能在sheet1的a列中是沒有的,可以加入防錯判斷,遇上這情況時,公式返回空白,以上公式返回的是#n/a錯誤值。

=if(countif(sheet1!a:a,a2),text(vlookup(--a:a,sheet1!a:b,2,),"e年m月d日"),"")

19樓:匿名使用者

格式問題

第一張圖中的a列數字是型別是「數值」

第二張圖中的a列的數字是「文字」

(如果沒改單元格對齊方式的話)

20樓:

=vlookup(a2,sheet1!a:b,2,0)檢查2個表的a列的數字,是否完全一致? 前後有無空格?

複製個資料,在sheet2表,查詢,檢查是否確實存在?

光是看圖,大家都是猜測

最好發你的問題表

21樓:匿名使用者

一看錶就能發現問題,你沒注意為什麼第一張圖的數字靠右邊,而第二張圖的數字是靠左邊呢?你右鍵看看單元格格式,兩個表的格式不相同的。

第二,第乙個查詢的引數只能是乙個單元格或常量,不能是一列,不然它到底查哪個數?

22樓:匿名使用者

應該時格式不同的原因,乙個是數字格式,乙個是文字格式。

23樓:

要返回的值不能是第一列,否則就會出錯

24樓:巴山隱士

公式 =vlookup(a:a,sheet1!a:b,2,false)有錯誤

其中的「a:a"不能選擇單元格區域,只能指定乙個單元格,比方a1這樣,再往下拖下去

25樓:匿名使用者

=vlookup(a:a,sheet1!a:b,2,0)試下

a:a 建議輸a列當前行 比如a2.。。

另外 上面的資料 好像格式不一致,確認是否一致

26樓:匿名使用者

我已經調整了格式,但是還是不一致。也已經排除了有空格的情況了。

excel中vlookup公式向下自動填充導致的查詢不嚴謹問題

27樓:綠衣人敲門

方法為了講解的需要,特製作如圖所示的**。當然,也可以根據自己的實際情況設計合適的內容。

接下來 ,任務是通過利用vlookup函式來實現查詢同學c的成績。為此在單元格中輸入「=vlookup」,此時就會發現vlookup包括三個引數和乙個可選引數。

其中「lookup_value」是指要查詢的值,在此為「c」。

引數「table_array」是指搜尋的區域,在此在除標題之後的整個資料區域。

第三個引數「col_index_num」是指整個函式返回單元格所在的列號,在此為「2」。

最後以右括號結尾,並按回車鍵,就出現想要的結果啦。

28樓:匿名使用者

你公式的第二部分為查詢區域,此處應為絕對引用,避免你下拉公式時,區域範圍相應發生改變,返回錯誤值。

解決方法:選住公式中的a1:b7,然後按f4鍵,將相對引用區域改變絕對引用區域,這樣就不會出現你顯示的錯誤了。

29樓:匿名使用者

=vlookup(a1,sheet!a$1:b$7,2,false)

加個絕對引用的範圍

30樓:匿名使用者

改一下就好了

=vlookup(a1,sheet2!$a$1:$b$7,2,false)

31樓:匿名使用者

=vlookup(a1,sheet!a$1:b$7,2,0)

或=vlookup(a1,sheet!a:b,2,0)

32樓:匿名使用者

這樣就可以了sheet2!a$1:b$7

excel中使用vlookup功能進行查詢,第乙個值沒有問題,但是下拉複製時,出現的全都是#ref! 50

33樓:匿名使用者

#ref 錯誤值,指的是

超出範圍的意思,由於是下拉產生的#ref,估計是vlookup公式的第二個引數的行回沒有加絕對引答用符號導致。

如公式:

=vlookup(b1,c2:d65536,2,0)

公式的第二引數為c2:d65536,由於excel 2003只最大只支援65536行,當公式下拉時,會變為c3:d65537,這就超出了65536這個行數的範圍了,公式必然返回#ref錯誤值。

(如果使用的版本高於excel 2003,需要注意用的不是相容模式,否則行列的數量還是按excel 2003計算)

所以應把c2:d65536的行前面加上$在下拉時固定下來不變,即c$2:d$65536,則完整公式:

=vlookup(b1,c$2:d$65536,2,0)

如果問題還沒有解決,那麼具體公式是什麼呢?這其實應該發上來才好解決的。還需要把**資料按以下形式截圖發上來。

Excel中VLOOKUP函式的作用是什麼?如何使用VLOO

vlookup 全部顯示 全部隱藏 在 陣列的首列查詢指定的值,並由此返回 陣列當前行中其他列的值。vlookup 中的 v 參數列示垂直方向。當比較值位於需要查詢的資料左邊的一列時,可以使用 vlookup 而不是 hlookup。語法vlookup lookup value,table arra...

excel中vlookup函式的使用方法函式怎麼用

函式的基本用法 vlookup 待查詢的資料,查詢的範圍,返回列,匹配型別 如圖 要查詢錢二的數學分數,公式為 vlookup 錢二 a1 b9,2,0 意義為在 a1 b9這個區域的第一列,也就是a1 a9,查詢 錢二 可以看到錢二在第四行,然後,返回列,公式指定為2,就是區域a1 b9這個區域的...

Excel中VLOOKUP公式陣列公式組合的函式輸入Ctrl Shift Enter組合鍵不起作用

雖然查詢區域沒有絕對引用,會在下拉時產生錯誤,但公式邏輯是對的,我仔細看了下,應該是你的公式之間的逗號問題,要用英文狀態下的逗號,你的逗號這麼大,是中文的逗號吧,這樣公式識別不了。單個公式是對的,但沒有對資料區域進行絕對引用,會引起向下填充時出錯。你沒有同時按下ctrl shift enter組合鍵...