excel陣列數值查詢,求高手幫忙

時間 2022-03-15 14:15:15

1樓:萬年金剛鑽

hi列同原公式,陣列公式

$f2,row($1:$9)),row($1:$9)*10^(9-row($1:

$9)),0)),"0","")

i2=if(countif($b2:$f2,0)>

$9))>1,row($1:$9)*10^(9-row($1:$9)),0)),"0","")

j2普通公式

k2和原來的類似,只是位置和數字稍稍變化下,依然是陣列公式

=if(j2="","",min(if((not(iserr(find(b3:b1003,j2)))+not(iserr(find(c3:c1003,j2)))+not(iserr(find(d3:

d1003,j2)))+not(iserr(find(e3:e1003,j2)))+not(iserr(find(f3:f1003,j2)))>1)*(b3:

b1003<>""),row(b3:b1003),65536))-row())

效果如圖

上傳了附件v1版

2樓:沈一民

j2=if(len(i2)<2,"",if(min(if((not(iserr(find(a3:a$16,i2)))+not(iserr(find(b3:b$16,i2)))+not(iserr(find(c3:

c$16,i2)))+not(iserr(find(d3:d$16,i2)))+not(iserr(find(e3:e$16,i2)))>1)*(a3:

a$16<>""),row(a3:a$16),65536))-row()>60000,"",min(if((not(iserr(find(a3:a$16,i2)))+not(iserr(find(b3:

b$16,i2)))+not(iserr(find(c3:c$16,i2)))+not(iserr(find(d3:d$16,i2)))+not(iserr(find(e3:

e$16,i2)))>1)*(a3:a$16<>""),row(a3:a$16),65536))-row()))

陣列公式向下複製。

excel 數值 數值 查詢 匹配,求高手幫忙!

求excel高手幫忙,我現在有下圖中資料,想在a、b和d、e中找出相同的資料,是a和d相同,d和e相同,

3樓:匿名使用者

在其中一列做vlookup查詢,相同資料的就顯示出來了。

excel 對應取值自動公式,求高手幫忙!

4樓:匿名使用者

利用vlookup函式;

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

vlookup函式說明:

vlookup函式

在**或數值陣列的首列查詢指定的數值,並由此返回**或陣列中該數值所在行中指定列處的數值。

這裡所說的「陣列」,可以理解為**中的一個區域。陣列的列序號:陣列的「首列」,就是這個區域的第一縱列,此列右邊依次為第2列、3列……。

假定某陣列區域為b2:e10,那麼,b2:b10為第1列、c2:

c10為第2列……。

語法:vlookup(查詢值,區域,列序號,邏輯值)

「查詢值」:為需要在陣列第一列中查詢的數值,它可以是數值、引用或文字串。

「區域」:陣列所在的區域,如「b2:e10」,也可以使用對區域或區域名稱的引用,例如資料庫或資料清單。

「列序號」:即希望區域(陣列)中待返回的匹配值的列序號,為1時,返回第一列中的數值,為2時,返回第二列中的數值,以此類推;若列序號小於1,函式vlookup 返回錯誤值 #value!;如果大於區域的列數,函式vlookup返回錯誤值 #ref!。

「邏輯值」:為true或false。它指明函式 vlookup 返回時是精確匹配還是近似匹配。

如果為 true 或省略,則返回近似匹配值,也就是說,如果找不到精確匹配值,則返回小於「查詢值」的最大數值;如果「邏輯值」為false,函式 vlookup 將返回精確匹配值。如果找不到,則返回錯誤值 #n/a。如果「查詢值」為文字時,「邏輯值」一般應為 false 。

另外:·如果「查詢值」小於「區域」第一列中的最小數值,函式 vlookup 返回錯誤值 #n/a。

·如果函式 vlookup 找不到「查詢值」 且「邏輯值」為 false,函式 vlookup 返回錯誤值 #n/a。

下面舉例說明vlookup函式的使用方法。

假設在sheet1中存放小麥、水稻、玉米、花生等若干農產品的銷售單價:

a                 b

1     農產品名稱       單價

2         小麥           0.56

3         水稻           0.48

4         玉米           0.39

5         花生           0.51

100      大豆         0.45

sheet2為銷售清單,每次填寫的清單內容不盡相同:要求在sheet2中輸入農產品名稱、數量後,根據sheet1的資料,自動生成單價和銷售額。設下表為sheet2:

a                 b         c           d

1    農產品名稱     數量     單價     金額

2    水稻             1000     0.48       480

3    玉米             2000     0.39       780

在d2單元格里輸入公式:

=c2*b2  ;

在c2單元格里輸入公式:

=vlookup(a2,sheet1!a2:b100,2,false) 。

如用語言來表述,就是:在sheet1表a2:b100區域的第一列查詢sheet2表單元格a2的值,查到後,返回這一行第2列的值。

這樣,當sheet2表a2單元格里輸入的名稱改變後,c2裡的單價就會自動跟著變化。當然,如sheet1中的單價值發生變化,sheet2中相應的數值也會跟著變化。

其他單元格的公式,可採用填充的辦法寫入。

vlookup函式使用注意事項

說到vlookup函式,相信大家都會使用,而且都使用得很熟練了。不過,有幾個細節問題,大家在使用時還是留心一下的好。

一.vlookup的語法

vlookup函式的完整語法是這樣的:

vlookup(lookup_value,table_array,col_index_num,range_lookup)

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

前者表示的是完整尋找,找不到就傳回錯誤值#n/a;後者先是找一模一樣的,找不到再去找很接近的值,還找不到也只好傳回錯誤值#n/a。這對我們其實也沒有什麼實際意義,只是滿足好奇而已,有興趣的朋友可以去體驗體驗。

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

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

b)第二點提醒的,是使用時一個方便實用的小技巧,相信不少人早就知道了的。我們在使用參照地址時,有時需要將lookup_value的值固定在一個格子內,而又要使用下拉方式(或複製)將函式新增到新的單元格中去,這裡就要用到「$」這個符號了,這是一個起固定作用的符號。比如說我始終想以d5格式來抓資料,則可以把d5弄成這樣:

$d$5,則不論你如何拉、複製,函式始終都會以d5的值來抓資料。

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

,則可能是col_index_num的值超過範圍的總欄位數。

二.vlookup的錯誤值處理。

我們都知道,如果找不到資料,函式總會傳回一個這樣的錯誤值#n/a,這錯誤值其實也很有用的。比方說,如果我們想這樣來作處理:如果找到的話,就傳回相應的值,如果找不到的話,我就自動設定它的值等於0,那函式就可以寫成這樣:

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

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

這裡面又用了兩個函式。

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

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

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

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

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

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

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

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

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

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

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

EXCEL用VBA將單元格數值存入陣列

12345額時代 1 首先開啟一個excel的檔案,在 中輸入簡單的 比如學生身高 如下圖所示。2 接著,在 中輸入一維陣列的說明文字,滑鼠左鍵單擊 開發工具 選單標籤,在vba控制元件下拉選單中,並選擇按鈕控制元件,如下圖所示。3 然後,在 中繪製出按鈕控制元件,並修改控制元件名稱,比如使用一維陣...

excel中如何查詢帶有公式的數值

1 單擊工作表左上角 全選 按鈕,開啟 設定單元格格式 對話方塊,在 保護 選項卡中取消勾選 鎖定 核取方塊,單擊 確定 按鈕 2 按鍵或鍵,在彈出的 定位 對話方塊中單擊 定位條件 按鈕,選擇 公式 選項後單擊 確定 按鈕 3 定位包含公式的單元格後,按照步驟1方法設定單元格格式,勾選 保護 選項...

求EXCEL高手幫忙,EXCEL問題,求高手幫忙

升序或降序排列後,第一行插入空白行,隨便輸入個值 例如a,然後選中該列,點資料 分類彙總 彙總方式 計數 確定,點左面的 2 出現頻率最高的 比如a1 a21 offset a1,max if countif a1 a21,a1 a21 max countif a1 a21,a1 a21 row a...