Excel經典函數介紹:INDEX與MATCH函數結合應用

INDEX與MATCH函數的結合應用,係利用一資料表中,列(Row)與欄(Column)的交集點,搜尋出所要的資料,於工廠中很適合應用在生產日報的自動化設定。

INDEX函數介紹:

INDEX函數的結構為=INDEX(array, row_number, column_number),其中各組成說明如下:

  • Array:為一資料表(Table)或資料範圍(Range);
  • Row_number:列位(為一整數),若輸入小數Excel會自動忽略小數點位;
  • Column_number:欄位(為一整數),若輸入小數Excel會自動忽略小數點位

下圖為某工廠生產數據資料表,請各位繼續往下看之前,先想一想要如何寫一公式找尋2022/5/10的工業水耗用量?

20220519_P1

以INDEX函數之定義來思考,2022/5/10的工業水耗用量數據其實就是2022/5/10日期的列(Row)與工業水耗用量的欄(Column)交集點。(如下圖)

20220519_P2

在開始寫公式之前,再次提醒大家養一個好習慣,將資料表進行命名(如下圖),將Table Name改為「生產數據」,以利公式易於解讀。

20220519_P3

針對此問題,使用公式:

=INDEX(生產數據,10,3)

可以得到正確答案499(如下圖);但如果每次要找尋其他日期、其他生產數據之資料,都要手動輸入列位欄位,那豈不是太耗時、太不自動化了嗎!讓我們接著看下去:MATCH函數介紹。

20220519_P4

MATCH函數介紹:

如其名般MATCH函數使用目的是為了找尋某數據(數字或文字)在一陣列中對應的位號。MATCH函數的結構為=MATCH(lookup_value, lookup_array, match_type),其各組成說明如下:

  • Lookup_value:找尋的目標數據(數字或文字);
  • Lookup_array:對應的陣列(只能為一列或一欄,不能同時有列與欄);
  • Match_type:對應模式分為01-10為找尋與目標數據完全相同之對應位號;1為若找不到與目標數據完全相同之數據,則以小於目標數據之值進行找尋對應位號(前提是對應陣列排序為A→Z);-1為若找不到與目標數據完全相同之數據,則以大於目標數據之值進行找尋對應位號(前提是對應陣列排序為Z→A)
    一般皆選擇0

承接上述生產數據找尋範例之公式INDEX(生產數據,10,3),若要將列位與欄位自動化,可結合利用MATCH函數(儲存格B2為搜尋之日期、B3為搜尋之生產數據項目),公式將變為:

=INDEX(
生產數據,
MATCH(B2,生產數據[日期], 0),
MATCH(B3, 生產數據[#Headers], 0)
);

將INDEX與MATCH函數結合應用後,可達到小編前面所述之數據查詢自動化設定。

20220519_P5-1

業界生產日報實際應用:

實際在工廠中生產數據可能超過100個項目(欄位)以上,若生產日報Excel檔案沒有如上述範例中建立生產數據資料庫,以及使用INDEX與MATCH函數結合之公式設定生產日報進行自動出表,將會造成工廠同仁需每天填寫不同的Excel檔案,而造成數據無法彙整起來統計分析、無法製作趨勢圖表、及較難檢查數據正確性。

下圖為小編做的生產日報簡易範例,工廠同仁每天需將生產數據填寫在生產數據資料表(Database),於生產日報工作表中只要選擇出表日期(儲存格B2),生產數據及趨勢圖即會自動更新,另因生產數據項目是固定的(儲存格B9:B13),所以不需要進行選擇。

另外建立一個生產數據資料庫,亦可幫助工廠同仁進行比對今日與昨日數據的差異、易於檢查數據正確性、及查詢歷史資料。

20220519_P6

另外上圖圖表為SparkLines(走勢圖),有興趣的朋友可以自行做圖看看。

20220519_P7

總結及補充:

經過上述範例,相信大家已經了解INDEX與MATCH函數結合應用之原理及在業界上的實際應用。另外,Excel有趣的地方就是答案永遠不止一個,要達到此對應功能的函數還有很多,例如VLOOKUP、XLOOKUP、FILTER等等(XLOOKUP與FILTER為Excel 2021/Microsoft 365版本才能使用)。

小編認為INDEX與MATCH函數結合運用之方法最為直觀,易於理解與記憶(若函數不容易讓人記憶,恐將導致大家因懶惰上網查詢,而變成不再使用的後果),且INDEX與MATCH函數在任一版本的Excel用戶皆能使用,著實為Excel的經典函數呢!

 

此範例中有提到建立「生產數據資料庫」,要建立一個生產數據資料庫其實還有很多要注意的地方(什麼是原始數據?什麼是計算數據?如何調整數據?等等),小編會再寫一篇文章來進行介紹。

這篇文章對您有幫助嗎?

平均評分 5 / 5. 2

We are sorry that this post was not useful for you!

Let us improve this post!

Tell us how we can improve this post?

發表迴響