在Excel中,使用vlookup函式與column函式

2021-04-08 18:07:18 字數 5679 閱讀 9814

1樓:葛芳洲威贊

a15:a18中不是升序排列,需要在v函式中使用精確查詢,就是在你列出的b23,b26,b27等函式中略加改動,就是最後一個右括號前加一個逗號,改為

=vlookup($a23,$a$15:$c$18,column(b23),)之類的

2樓:苟柔蔓卑茉

你這種情況是因為你沒有true/false預設為返回相近值就可以了,所以用資料時,資料被預設為是相近的,返回的資料會錯誤,而字母時相近的沒有了,所以返回是對的!

在最後加個0就可以了!

=vlookup(a23,a15:c18,column(b23),0)

如何用excel中的vlookup函式查詢另一個表中一個值,則返回顯示另一個表中的多個值

3樓:匿名使用者

假設sheet1表的a1填入"唐思科",查詢sheet2表a列的"唐思科",如有則返回sheet2的b列對應值,可查對應的多個值

sheet1表的b1填入公式

=index(sheet2!$b:$b,**all(if(countif(a$1,sheet2!

a$1:a$1000)>0,row($1:$1000),4^8),row(a1)))&""

陣列公式,按下shift+ctrl+enter三鍵結束輸入,下拉複製公式

如果要右拉複製

=index(sheet2!$b:$b,**all(if(countif($a$1,sheet2!

$a$1:$a1000)>0,row($1:$1000),4^8),column(a1)))&""

陣列公式,按下shift+ctrl+enter三鍵結束輸入,右拉複製公式

可再下拉複製求a2的名字的對應值

4樓:匿名使用者

運用vlookup查詢返回多個值的要點:

1、使用絕對引用固定第一個引數lookup_value,防止右拉填充時第一個引數跟隨變化;

2、第二個引數table_array要包含所有需要查詢的資料列;

3、第三個引數col_index_num應能隨右拉填充而變化。

示例:通過表1的a列值查詢對應表2的a列值,返回表2同行的c列、d列和e列值。

公式:=vlookup($a2,表2!a:e,column(b1),) 右拉填充至e列。

其中:$a2是絕對應用;表2!a:e包含了所有資料列;column(b1)可隨右拉變化對應取值列。

5樓:譚笑風笙

可以這樣

假設你表1中姓名在a列,其它專案在bcdef中,在表2的b2輸入=vlookup(a2,sheet1!a:f,column(b:b),0)

向右複製到f2,然後下拉

6樓:匿名使用者

加列標行標前加「$」,

excel怎麼用vlookup函式批量返回一個值,返回的條件有兩個,滿足其中一個條件即可

7樓:匿名使用者

a1:王二 b1:1

a2:王二 b2:2

c1:王二

d1輸入:

=vlookup(c1,a:b,2,0)

解釋:=vlookup(查詢c1的值,在a:b列中的首列(也就是a列中查詢),返回第2列的值,精確查詢)

以上是逗號間引數的關係。

8樓:匿名使用者

vlookup

在**或數值陣列的首列查詢指定的數值,並由此返回**或陣列當前行中指定列處的數值。當比較值位於資料表首列時,可以使用函式 vlookup 代替函式 hlookup。

在 vlookup 中的 v 代表垂直。

語法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。

示例12345678910abc密度粘度溫度.4573.55500.

5253.25400.6162.

93300.6752.75250.

7462.57200.8352.

38150.9462.171001.

091.95501.291.

710公式說明(結果)=vlookup(1,a2:c10,2)在 a 列中查詢 1,並從相同行的 b 列中返回值 (2.17)=vlookup(1,a2:

c10,3,true)在 a 列中查詢 1,並從相同行的 c 列中返回值 (100)=vlookup(.7,a2:c10,3,false)在 a 列中查詢 0.

746。因為 a 列中沒有精確地匹配,所以返回了一個錯誤值 (#n/a)=vlookup(0.1,a2:

c10,2,true)在 a 列中查詢 0.1。因為 0.

1 小於 a 列的最小值,所以返回了一個錯誤值 (#n/a)=vlookup(2,a2:c10,2,true)在 a 列中查詢 2,並從相同行的 b 列中返回值 (1.71)

9樓:沈一民

上傳帶行列號的有資料示例的**截圖,清楚說明已知條件,達成什麼樣的結果,結果和已知條件有怎樣的勾稽關係,才能有針對性地給你準確的答案。

10樓:匿名使用者

問得有些含糊,用if與vlookup相結合,應該可以解決。

在excel中,如果一列資料有一個或多個滿足查詢條件的值,如何返回每個值對應其他列的值?

11樓:退休畫線工

這裡用vlookup是不行的,主要是vlookup一般不能返回所有滿足條件的對應值,非得用vlookup會增加極大的難度。其次vlookup查詢的內容一般只能是查詢區域的第1列,不是第1列,要特殊處理,一般沒這樣的必要。

這類問題是典型的indix+**all的組合公式:

h28=iferror(index(h$1:h$25,**all(if(i$2:i$25=g$27,row($2:$25)),row(1:1))),"")

同時按ctrl+shift+enter三鍵輸入陣列公式,下拉到出現空白單元格。

12樓:匿名使用者

可以考慮用**解決的。

excel用vlookup查詢的值存在兩個相同數值的時候,如何都顯示出來?

13樓:匿名使用者

excel用vlookup查詢的值存bai在兩個du相同數值的時候,如何都zhi顯示出來dao的解決方法如下專:

1、用vlookup函式對滿屬足相同條件的多個資料,只能返回對應的第一個資料,例如a列為人名有兩個「張三」,對應b列有兩個成績,「80」和「95」,用vlookup函式只能返回「80」,後面的「95」是無法返回的。

2、同樣是上面的例子,用「index」配合「**all」、「if」函式可以達到目的,在c1輸入以下公式「=index($b:$b,**all(if($a$1:$a$1000<>"張三","",row($a$1:

$a$1000)),row(c1)),)」,這是陣列公式,需按「ctri」+「shift」+「enter」三鍵結束,然後公式下拖,可以把「80」和「95」都顯示出來。

14樓:匿名使用者

用vlookup函式對滿足相同條件的多個資料,只能返回對應的第一個資料,例專如a列為人名有兩屬個「張三」,對應b列有兩個成績,「80」和「95」,用vlookup函式只能返回「80」,後面的「95」是無法返回的。

同樣是上面的例子,用「index」配合「**all」、「if」函式可以達到目的,在c1輸入以下公式「=index($b:$b,**all(if($a$1:$a$1000<>"張三","",row($a$1:

$a$1000)),row(c1)),)」,這是陣列公式,需按「ctri」+「shift」+「enter」三鍵結束,然後公式下拖,可以把「80」和「95」都顯示出來。

請通過站內訊息把郵箱告知,可以發例項表。

15樓:登陸都有

我提問跟你一樣的問題

利用index()和match()函式配合實現就行了

可以hi我,我給你看看

16樓:匿名使用者

vlookup陣列公式

或index+match+**all

17樓:匿名使用者

不可能。

excel裡,每一個**都有對應的座標關係,a1,b3等等。

vlookup函式是查詢後首先返回行序號,再進一步返回單元格的值,無法使兩個以上的數顯示出來。

excel vlookup函式怎麼查詢一個值返回多個結果

18樓:第七次要分

vlookup函式只能返回一個結果,如果想要一對多查詢,可以使用其他函式,看下邊例子,將部門為a的姓名列舉到e列:

一、一個單元格放一個名字:e2公式=iferror(index(b:b,**all(if(a:a=d$2,row(a:a)),row(a1))),""),陣列公式,三鍵結束;

二、將a部門的姓名放在e2單元格中,用逗號隔開:首先將資料按部門排序,然後在e2公式=mid(substitute(phonetic(offset(a1,match(d2,a2:a12,),,countif(a:

a,d2),2)),d2,","),2,99),陣列公式,三鍵結束。

在excel中能否在tan函式中使用角度計算

excel中三角函式使用的是弧度作為引數,如果是角度,需轉為弧度。如tan30 在excel可以寫版成 tan 30 pi 180 30 pi 180 就是30 轉為弧度數,權pi 代表 其它三角函式類似。在excel中能否在tan函式中使用角度計算 excel中三角函式使用的 抄是弧度作為引數,如...

excel中使用哪個公式可以隨機產生英文字母

產生隨機字母,可以用char函式來實現。該函式用於返回對應數字 的字元,引數是從1 255之間的數字。可以用這個特性和row函式想結合生成隨機的英文字母。英文字母a對應的數字 是65,可以在a1單元格輸入公式 char 64 row 用row函式構建一個自然序列,實現在下拉公式時生成英文字母。如果是...

excel中使用正規表示式,如何在Excel VBA 中使用正規表示式

正規表示式搞不明白 可以定義一名稱,比如 aa evaluate substitute substitute substitute substitute f f,m 條 米 在h2輸入 aa 試試行不 正規表示式怎麼在excel使用 工具 材料 microsoft office excel2016版...