關於EXCEL中,INDIRECT和MATCH函式的使用

時間 2021-10-14 20:19:19

1樓:匿名使用者

indirect函式是引用函式,何為引用?舉個例子,有一excel表,a列的第一行的值是"b5",而b列第五行的值是"abc",那麼indirect($a$1)返回的值就是b列第五行的值。也就是類似其他程式語言中的設定變數一樣。

indirect函式還可以分解引用的資料,譬如,a列的第一行的值是"5",你可以用indirect("b"&$a$1),同樣返回b列第5行的值。(括號內的"b"&$a$1其實就是字元"b"加上a列第一行的值"5",也就是"b5")

match 函式是查詢你需要的資料,然後返回資料所在的位置(從你指定的行數開始,在第幾行,不是絕對的行號,而是相對的,譬如說,你從第2行至第10行之間找,而匹配的資料在第3行,返回的不是3,而是2,明白嗎?)

match函式還有乙個match_type引數,分為1,0,-1,

其中 1是指查詢小於或等於你設定查詢內容的最大數值。你查詢的那一列必須按公升序排列。

0是指查詢等於你設定查詢內容的值,你查詢的那一列對排序沒有要求。

-1是指查詢大於或等於你設定查詢內容的最大數值。你查詢的那一列必須按降序序排列。

具體的例子你可以看一樓的回答,應該能看懂。

ps:關於絕對引用,你可以寫成$a$1,也可以寫成a$1或者$a1,「$」符號的作用就是絕對定位,寫成列前面是列絕對定位,寫成行號前面是行絕對定位,也就是說當單元格發生變化的時候,列號和行號不發生變化,反之,則相應更改。

ps:回樓主,你的理解是對的。

2樓:匿名使用者

你這不公式不難,只是巢狀比較多,不好用語言表達,即使我寫了,你可能也不一定能看懂,選是乙個if()語句,如果a5是空值,則返回空值,如果不是則返回後面的值。返回"&b$2&"所顯示的工作表中c列與後面一系列公式組合確定行的值。這個行值為還有一些巢狀不好用語言表達,對這兩個函式有什麼疑問可以hi我。

3樓:匿名使用者

b2存放的是資料表頁面名稱,如sheet2,a5存放的是查詢的條件,比如是「辦公費用」

執行公式後,將會在sheet2頁面的a列找「辦公費用」四個字出現的所在行數,找到後,從此行向下,找出第乙個出現"合 計",字樣的行,把此行第3列,即c列的數引用出來

excel中誰能給我舉幾個indirect 函式 address函式 match函式巢狀使用的例子?

4樓:匿名使用者

1、 match(a2,b2:h2,0)指在b2:b9中找到a2這個值所在第幾列(注意:是從b列開始計);

2、address(行,列,【】), 返回值為列行,單元格地位格式,如:b7,c9,【】中1至4是返回值的引用格式

3、indirect (b2) ,返回b2中的值;

三個函式可以鑲嵌如:indirect (address (4,match(a2,b2:h2,0)) ) ;

解釋excel函式

5樓:匿名使用者

這是個陣列公式.輸入後要按shift+ctrl+enter才能得出正確值

先假設a1單元格內容是 "adbd其它1323"

解釋函式,必須從裡到外開始拆解公式

這一段包含六個函式,一層層從裡到外拆解巢狀

len(a1),得到a1單元格字元長度,即10,套入indirect公式

indirect("1:"&10)得出乙個文字字元器的引用1:10,套入row函式

row(1:10)得出乙個常量陣列,再套入mid函式

mid(a1,,1)分別擷取a1單元格每乙個字元.a,d,b,d,其,它,1,3,2,3

再帶入lenb函式得出包含雙位元組的字條長度,中文是雙位元組,英文和數值都是單位元組,所以會得出乙個陣列,再帶入match函式

=match(2,,) 精確查詢2所在的位置為第5位

所以,這個公式返回結果為5

如果要得出a1單元格中第乙個數字所在的位置

可以輸入下面的公式,一樣按shift+ctrl+enter結束

=match(,0/isnumber(--mid(a1,row($1:$99),1)),)

打字真的好累

請教excel中關於indirect函式

6樓:南山馬冬梅

在c4單元格內輸入或複製貼上此公式

=1班!e5

或=indirect("1班!e5")

或=indirect(a4&"!e5")

下拉填充

7樓:匿名使用者

第一,indirect函式對單元格引用的兩種方式。

看下圖,使用indirect函式在c2、c3引用a1單元格的內容。

1、=indirect("a1"),結果為c3。這種使用,簡單的講,就是將這些引用位址套上雙引號,然後再傳遞給indirect函式。

2、=indirect(c1),結果為c2。解釋:因為c1的值就是 "a1",在公式編輯欄,選中「c1」,然後按下f9鍵,計算值,可以看到變為「"a1"」,本質沒變,都是對單元格引用。

上面兩者的區別在於:前者是a1單元格內文字的引用,後者是引用的c1單元格內的位址引用的單元格的內容。

第二,indirect函式工作表名稱的引用。

如下圖所示:

如果需要在「二班」工作表,計算「一班」工作表b2:b11的成績總和。可以使用這樣的 公式:

=sum(indirect("一班!b2:b11"))。

解釋:indirect(「工作表名!單元格區域」)

另外一種情況:當工作表名稱直接是數字的,在工作表名稱兩邊必須新增上一對單引號。

同樣的,在「2」工作表,計算「1」工作表b2:b11的成績總和。公式為:

=sum(indirect("'1'!b2:b11"))。

解釋:indirect(「』工作表名』!單元格區域」)

總結:如果工作表名為漢字,工作表名前後可以加上一對單引號,也可以不加。但是數字和一些特殊字元時,必須加單引號,否則不能得到正確結果。

我們在工作表命名時形成習慣盡量不要有空格和符號,這樣可以不怕indirect引用忘記加單引號括起來。要麼形成習慣所有indirect帶工作表名引用時都用單引號將代表工作表名的字串括起來。

第三,indirect函式對工作簿引用的書寫方式和細節正確寫法

=indirect("[工作簿名.xls]工作表表名!單元格位址")

indirect函式,如果是對另乙個工作簿的引用(外部引用),則那個工作簿必須被開啟。如果源工作簿沒有開啟,函式 indirect 返回錯誤值 #ref!。

第四,indirect函式應用例項一:製作多級下拉列表

其原理是利用定義名稱,然後在單元格輸入與定義名稱相同的字元再對含有這種字元的單元格用indirect作引用。

8樓:萬年金剛鑽

b1=()*b1?迴圈哦

=indirect("sheet"&a1&"!x100")將引用當前表中a1指定的sheet號中的

b100")將引用當前表中a1指定的sheet號中的

b1")

會返回當前表中a1指定的sheet號中的a1*b1的數值

9樓:真真真白丁

親,如果您只是想按1、2、3、……、10的順序引用工作表,那麼不用在a1:a10輸入1~10,因為用row(a1)可以很方便的產生順序數,向下拉動公式,row(a1)就變成row(a2)……

公式為

如果您引用的工作表數字不是順序的,必須按a列自定義的順序,那麼公式改為:

10樓:匿名使用者

=inderect(""sheet" & a1 & "'!a1*b1")

但是,你這裡有個迴圈引用的問題

b1=a1*b1?? 自身*自身?這樣是有問題的

11樓:平陽虎

12樓:月夜清泉

excel**中的函式lookup具體怎麼應用,各引數什麼含義,謝謝高手指點

13樓:匿名使用者

excel**中利用序號綜合排序,請高手幫忙指點一下,以下有圖說明。

excel公式解讀?

14樓:匿名使用者

使用 match 函式在 範圍 單元格中搜尋特定的項,然後返回該項在此區域中的相對位置。

ae5為要搜尋的值

為要搜尋的單元格區域

第三引數預設,表示精確匹配。

假設match(ad5,$a:$a,)結果為數值n,則

ab"&match(ad5,$a:$a,))為an:abn單元格區域。

15樓:風傷殘月愁

意思為返回符合ae5值在a(返回符合ad5值a列的位置)到ab(返回符合ad5值a列的位置)的數字置;

解讀:1.match函式返回指定數值在指定陣列區域中的位置。match函式是excel主要的查詢函式之一。

2.indirect函式,返回由文字字串指定的引用。 此函式立即對引用進行計算,並顯示其內容。

 如果需要更改公式中對單元格的引用,而不更改公式本身,請使用函式 indirect。

3.

ab"&match(ad5,$a:$a,))的結果其實就是a#:ab#      (#代表資料返回的值)

如圖效果:

4.全公示為:=match(ae5,a#:ab#,)

如圖:效果:

16樓:第七次要分

indirect函式:返回由文字字串指定的引用。比如=indirect("a10")就是a10單元格的值,用這個函式是因為很多時候「a10"無法直接獲得,需要經過計算得出,就有了"a"&公式的寫法。

假如indirect函式裡邊的兩個match結果是5,indirect函式的引數就變成了("a"&5&":ab"&5),也就是indirect("a5:ab5"),就是引用a5:

ab5這個區域。最外層函式就變成了=match(ae5,a5:ab5,)就是查詢ae5在a5:

ab5中的位置。

Excel多重巢狀問題,關於EXCEL中IF 的多重巢狀問題

此處假設a2單元格輸入lactate資料,b2單元格輸入sxvo2資料,c2輸入pvaco2資料,則可在d2單元格輸入公式 if a2 2,if b2 70 if c2 6,high co anemia low co with if c2 6,high co sepsis mic.alt with ...

關於excel中函式的使用

設a c的值分別在a1 c1格內,h值在d1。在d1中輸入公式 if and a1 1,and c1 1,c1 10 10,if and a1 1,and c1 10,c1 20 20,if and a1 2,and c1 10,c1 20 10,if and a1 2,and c1 1,c1 10...

關於Excel問題,關於Excel問題

來自九隴山風風韻韻的魔芋 整體思路 第一 首先使用if函式判斷是否大於20 第二 使用len和find函式判斷小數字數 第三 當大於20的時候直接使用roundup len和find函式組合公式 第四 當小於20的時候,使用right函式判斷最後一位是否小於5 第五 當最後一位小於5的時候,使用le...