excel中有幾十萬資料如何使用函式VLOOUP,得到需要的幾百個資料

2022-08-13 03:25:02 字數 4751 閱讀 7254

1樓:excel小樹

這是vlookup的多項查詢。

比如,我想查詢劉勇的銷售額,如果按照正常思路來操作的話,在f3單元格中輸入公式=vlookup(e3,$b$2:$c$8,2,false),得到的結果是29,如圖1:

圖1假如我想提取劉勇第二次出現的資料的話,或者把劉勇的所有對應資料全部提取出來,顯然利用上面的操作方式是行不通的,那該怎麼處理呢?這時我們可以借用輔助列來實現。

如圖2,我們在a2單元格中輸入=b2&countif($b$2:$b2,b2)。

$a$2:$a2是乙個變動的區域,公式向下拖動的時增大它的引用範圍,這個範圍的起始行是不變的,終止行是公式所在的行,公式的意思就是:公式所在的行對應的a列單元格的值在a列中第一次出現的時候返回1,第二次出現時返回2,第三次出現返回3,依此類推……$起到鎖定的作用。

方法是選中要鎖定的單元格,按f4鍵。(膝上型電腦需要在英文狀態下按shift+4),如圖2:

圖2在f3中輸入然後,向右拖拉。

ifferror作用:防止錯誤的出現。比如,沒有找到對應的資料。

column(a1)作用:提取單元格所在的列號

如圖3:

在這裡,給大家補充乙個方法,如何使出現劉勇所在位置進行整行填充顏色?

這時我們就可以使用條件格式來實現,步驟如下:開始→條件格式→新建規則→使用公式,輸入:=$b2=$e$3,如圖4:圖4

2樓:冠懷雁

用資料透視表或者vba吧

excel怎麼從上萬資料中匹配幾百個資料? 10

3樓:匿名使用者

語法規則

編輯該函式的語法規則如下:

vlookup(lookup_value,table_array,col_index_num,range_lookup)

引數簡單說明

輸入資料型別

lookup_value

要查詢的值

數值、引用或文字字串

table_array

要查詢的區域

資料表區域

col_index_num

返回資料在查詢區域的第幾列數

正整數range_lookup

模糊匹配/精確匹配

true/false(或不填)

引數說明

編輯lookup_value為需要在資料表第一列中進行查詢的數值。lookup_value 可以為數值、引用或文字字串。當vlookup函式第一引數省略查詢值時,表示用0查詢。

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 查詢時是精確匹配,還是近似匹配。如果為false或0 ,則返回精確匹配,如果找不到,則返回錯誤值 #n/a。如果 range_lookup 為true或1,函式 vlookup 將查詢近似匹配值,也就是說,如果找不到精確匹配值,則返回小於 lookup_value 的最大數值。

如果range_lookup 省略,則預設為模糊匹配。range_lookup 最好是明確指定,預設是模糊匹配!

使用舉例

編輯vlookup教學參考

如圖所示,我們要在a2:f12區域中提取工號為100003、100004、100005、100007、100010五人的全年總計銷量,並對應的輸入到i4:i8中。

乙個乙個的手動查詢在資料量大的時候十分繁瑣,因此這裡使用vlookup函式演示:

首先在i4單元格輸入「=vlookup(」,此時excel就會提示4個引數。

第乙個引數,顯然,我們要讓100003對應的是h4,這裡就輸入「h4,」 ;

第二個引數,這裡輸入我們要查詢的區域(絕對引用),即「$a$2:$f$12,」;

第三個引數,「全年總計」是區域的第六列,所以這裡輸入「6」,就會輸入第四季度的專案了;

(注意:這裡的列數不是excel預設的列數,而是查詢範圍的第幾列)

第四個引數,因為我們要精確查詢工號,所以輸入「false"或者「0」。

最後補全最後的右括號「)」,得到公式「=vlookup(h4,$a$2:$f$12,6,0)」,使用填充柄填充其他單元格即可完成查詢操作。

vlookup函式使用注意事項

一.vlookup的語法

1.括號裡有四個引數,是必需的。最後乙個引數range_lookup是個邏輯值,我們常常輸入乙個0字,或者false;其實也可以輸入乙個1字,或者true。兩者有什麼區別呢?

前者表示的是完整尋找,找不到就傳回錯誤值#n/a;後者先是找一模一樣的,找不到再去找很接近的值,還找不到也只好傳回錯誤值#n/a。

a)參照位址的單元格格式類別與去搜尋的單元格格式的類別要一致,否則的話有時明明看到有資料,就是抓不過來。特別是參照位址的值是數字時,最為明顯,若搜尋的單元格格式類別為文字格式,雖然看起來都是123,但是就是抓不出東西來的。

而且格式類別在未輸入資料時就要先確定好,如果資料都輸入進去了,發現格式不符,已為時已晚,若還想去抓,則需重新輸入。

b)在使用參照位址時,有時需要將lookup_value的值固定在乙個格仔內,而又要使用下拉方式(或複製)將函式新增到新的單元格中去,這裡就要用到「$」這個符號了,這是乙個起固定作用的符號。比如說我始終想以d5格式來抓資料,則可以把d5弄成這樣:$d$5,則不論你如何拉、複製,函式始終都會以d5的值來抓資料。

c) 用「&" 連線若干個單元格的內容作為查詢的引數。在查詢的資料有類似的情況下可以做到事半功倍。

3.table_array是搜尋的範圍,col_index_num是範圍內的欄數。col_index_num 不能小於1,其實等於1也沒有什麼實際用的。如果出現乙個這樣的錯誤的值#ref!

,則可能是col_index_num的值超過範圍的總字段數。選取table_array時一定注意選擇區域的首列必須與lookup_value所選取的列的格式和字段一致。比如lookup_value選取了「姓名」中的「張三」,那麼table_array選取時第一列必須為「姓名」列,且格式與lookup_value一致,否則便會出現#n/a的問題。

4.在使用該函式時,lookup_value的值必須在table_array中處於第一列。

二.vlookup的錯誤值處理。

如果找不到資料,函式總會傳回乙個這樣的錯誤值#n/a,這錯誤值其實也很有用的。

例如,如果我們想這樣來作處理:如果找到的話,就傳回相應的值,如果找不到的話,就自動設定它的值等於0,則函式可以寫成這樣:

=if(iserror(vlookup(1,2,3,0)),0,vlookup(1,2,3,0))

在excel 2007以上版本中,以上公式等價於

=iferror(vlookup(1,2,3,0),0)

這句話的意思是:如果vlookup函式返回的值是個錯誤值的話(找不到資料),就等於0,否則,就等於vlookup函式返回的值(即找到的相應的值)。

這裡又用了兩個函式。

第乙個是iserror函式。它的語法是iserror(value),即判斷括號內的值是否為錯誤值,如果是,就等於true,不是,就等於false。

第二個是if函式,這也是乙個常用的函式的,後面有機會再跟大家詳細講解。它的語法是if(條件判斷式,結果1,結果2)。如果條件判斷式是對的,就執行結果1,否則就執行結果2。

舉個例子:=if(d2=」」,」空的」,」有東西」),意思是如d2這個格仔裡是空的值,就顯示文字「空的」,否則,就顯示「有東西」。(看起來簡單吧?

其實程式設計序,也就是這樣子判斷來判斷去的。)

在excel 2007以上版本中,可以使用iferror(value, value_if_error)代替以上兩個函式的組合,該函式判斷value表示式是否為錯誤值,如果是,則返回value_if_error,如果不是,則返回value表示式自身的值。

三.含有vlookup函式的工作表檔案的處理。

一般來說,含有vlookup函式的工作表,如果又是在別的檔案裡抓取資料的話,檔案往往是比較大的,尤其是當你使用的檔案本身就很大的時候,那每次開啟和存檔都是很受傷的事情。

有沒有辦法把檔案壓縮一下,加快開啟和存檔的速度呢?這裡提供乙個小小的經驗。

在工作表裡,點選工具──選項──計算,把上面的更新遠端參照和儲存外部鏈結的勾去掉,再儲存檔案,則會加速不少,不信你可以試試。

下面詳細的說一下它的原理。

1.含有vlookup函式的工作表,每次在儲存檔案時,會同時儲存乙份其外部鏈結的檔案。這樣即使在單獨開啟這個工作表時,vlookup函式一樣可以抓取到數值。

3.了解到這點,我們應該知道,每次單獨開啟含有vlookup函式的工作表時,裡面抓取外部檔案的數值,只是上次我們存檔時儲存的值。若要鏈結最新的值,必須要把外部檔案同時開啟。

vlookup最容易出錯的地方是查詢區域的首列必須含有查詢的內容。

比方說乙個表,a列是序號,b列是姓名,c列是身份證,你在d列輸入其中的乙個姓名,在e1得到其身份證的公式不能是=vlookup(d1,a:c,3,0),而應是=vlookup(d1,b:c,2,0).

4樓:地圖演義

excel 2016 怎麼使用萬用字元查詢資料

excel資料標籤寬度如何調整,excel圖示中資料標籤文字框大小如何調整

將顯示資料的外框,向右拉伸,只要有足夠的空間,就不會自動換行了,圖上應該是右邊空間不足,資料自動換行了。excel圖示中資料標籤文字框大小如何調整?資料標籤只能在對應數列的上面,要是他們在一行中顯示,你就需要把你的這個圖示拉寬,不過那樣子更不好看了 遇到同樣的問題了,有答案沒,求分享 excel 餅...

excel上怎麼做資料地圖,Excel如何製作資料地圖

很簡單的,將excel資料匯入到bdp個人版,然後直接將省份 城市 拉到維度欄,需要統計的資料放到數值欄,在顏色欄可以調你想要的顏色,隨你定義 調整顏色的效果如下 excel 如何製作資料地圖 關於這個問題,製作資料地圖的方法已不新奇,總體來說有這麼幾類方案 一 工具 地圖無憂 excel 二 操作...

EXCEL資料中有正數負數,求所有負數間正數的和所有正數見每段負數的和取最大正值和最大負值

增加輔來助列b列。b1公式 自 if a1 a2 0,a1,a1 b2 c1公式 iferror if a1 offset a1,1,0,b1,b1 e1公式 max c c e2公式 min c c b1和c1公式均向下拉到資料末行。結果如下圖 公式如下圖 步子如下 1 在最bai上邊加du一行作...