通過在Excel中使用數組公式 ,我們可以創建一個查找公式,該公式使用多個條件來查找數據庫或數據表中的信息。
本教程包含一個逐步創建查找公式的示例,該查找公式使用多個標准在示例數據庫中查找鈦Widgets的供應商。
遵循以下教程主題中的步驟,將引導您創建和使用上圖中所示的公式。
09年01月
輸入教程數據
為了遵循教程中的步驟,將上圖中顯示的數據輸入到以下單元格中 。
- 將數據的頂部範圍輸入到單元格D1到F2中
- 在單元格D5到F11中輸入第二個範圍
本教程不包含圖像中顯示的格式,但這不會影響查找公式的工作方式。
有關類似於上述格式選項的信息可在此基本Excel格式教程中找到。
09年02月
啟動INDEX功能
INDEX函數是Excel中具有多種形式的少數幾個函數之一。 該函數具有數組表單和參考表單 。
數組表單返回數據庫或數據表中的實際數據,而參考表單則為您提供表格中數據的單元格引用或位置。
在本教程中,我們將使用Array Form,因為我們想知道鈦部件供應商的名稱,而不是我們數據庫中對該供應商的單元格引用。
每個表單都有一個不同的參數列表,在開始函數之前必須選擇它們。
教程步驟
- 單擊單元格F3使其成為活動單元格 。 這是我們將輸入嵌套函數的地方。
- 點擊功能區菜單的公式選項卡。
- 從功能區中選擇查找和參考以打開功能下拉列表。
- 點擊列表中的INDEX ,彈出Select Arguments 對話框 。
- 在對話框中選擇數組row_num,col_num選項。
- 單擊確定以打開INDEX功能對話框。
09年3月
輸入INDEX函數數組參數
第一個參數是Array參數。 該參數指定要搜索的期望數據的單元格 範圍 。
對於本教程,這個參數將成為我們的示例數據庫 。
教程步驟
09年9月4日
啟動嵌套MATCH功能
將一個函數嵌套在另一個函數中時 ,無法打開第二個或嵌套函數的對話框以輸入必要的參數 。
嵌套函數必須作為第一個函數的參數之一輸入。
在本教程中,嵌套的MATCH函數及其參數將被輸入到INDEX函數對話框的第二行 - Row_num行。
需要注意的是,當手動輸入函數時,函數的參數之間用逗號“,”分隔。
輸入MATCH函數的Lookup_value參數
輸入嵌套MATCH函數的第一步是輸入Lookup_value參數。
Lookup_value將是我們希望在數據庫中匹配的搜索項的位置或單元格引用 。
通常Lookup_value只接受一個搜索條件或術語。 為了搜索多個標準,我們必須擴展Lookup_value 。
這是通過使用& 字符串連接或連接兩個或多個單元格引用來完成的。
教程步驟
- 在INDEX函數對話框中,單擊Row_num行。
- 鍵入函數名稱匹配,後跟一個打開的圓括號“ ( ”
- 單擊單元格D3將該單元格引用輸入到對話框中。
- 在單元格引用D3之後鍵入一個&符號“ & ”以添加第二個單元格引用。
- 單擊單元格E3 ,將第二個單元格引用輸入到對話框中。
- 在單元格引用E3之後鍵入逗號“,”以完成MATCH函數的Lookup_value參數的輸入。
- 將INDEX功能對話框保留為教程中的下一步。
在本教程的最後一步中,Lookup_values將被輸入到工作表的單元格D3和E3中。
09年05月05日
添加MATCH函數的Lookup_array
這一步包括為嵌套的MATCH函數添加Lookup_array 參數 。
Lookup_array是MATCH函數將搜索的單元格範圍,用於查找本教程前一步中添加的Lookup_value參數。
由於我們在Lookup_array參數中確定了兩個搜索字段,因此我們必須對Lookup_array執行相同的操作 。 MATCH函數僅為指定的每個術語搜索一個陣列。
要輸入多個數組,我們再次使用&符號連接數組。
教程步驟
這些步驟將在INDEX函數對話框的Row_num行的上一步中輸入逗號後輸入。
- 在逗號後面單擊Row_num行將插入點放置在當前條目的末尾。
- 選中工作表中的單元格D6到D11以輸入範圍。 這是函數要搜索的第一個數組。
- 在單元格引用D6:D11之後鍵入一個&符號“ & ”,因為我們希望函數搜索兩個數組。
- 高亮顯示工作表中的單元格E6到E11以輸入範圍。 這是函數要搜索的第二個數組。
- 在單元格引用E3之後鍵入逗號“,”以完成MATCH函數的Lookup_array參數的輸入。
- 將INDEX功能對話框保留為教程中的下一步。
09年06月
添加匹配類型和完成匹配功能
MATCH函數的第三個也是最後一個參數是Match_type參數。
該參數告訴Excel如何將Lookup_value與Lookup_array中的值進行匹配。 選項是:1,0或-1。
這個參數是可選的。 如果省略,則該函數使用默認值1。
- 如果Match_type = 1或省略:MATCH將查找小於或等於Lookup_value的最大值。 Lookup_array數據必須按升序排序。
- 如果match_type = 0:MATCH將找到與Lookup_value完全相同的第一個值。 Lookup_array數據可以按任意順序排序。
- 如果Match_type = -1:MATCH找到大於或等於Lookup_value的最小值。 Lookup_array數據必須按降序排列。
教程步驟
這些步驟將在INDEX函數對話框的Row_num行的上一步中輸入逗號後輸入。
- 在Row_num行的逗號後面,輸入一個零“ 0 ”,因為我們希望嵌套函數返回與我們在單元格D3和E3中輸入的術語完全匹配。
- 鍵入結束括號“ ) ”來完成MATCH功能。
- 將INDEX功能對話框保留為教程中的下一步。
09年7月
返回INDEX函數
現在MATCH函數完成了,我們將移動到打開對話框的第三行並輸入INDEX函數的最後一個參數 。
這第三個也是最後一個參數是Column_num參數,它告訴Excel D6到F11 範圍內的列號,它可以找到我們想要的函數返回的信息。 在這種情況下, 鈦部件的供應商。
教程步驟
- 點擊對話框中的Column_num行。
- 由於我們正在查找範圍D6到F11的第三列中的數據,因此在此行中輸入第三個“ 3 ”(不含引號)。
- 不要單擊確定或關閉INDEX功能對話框。 它必須在本教程的下一步保持打開狀態 - 創建數組公式 。
09年08月08日
創建數組公式
在關閉對話框之前,我們需要將我們的嵌套函數轉換為數組公式 。
數組公式可以在數據表中搜索多個項。 在本教程中,我們希望匹配兩個術語:第1列的Widgets和第2列的鈦。
在Excel中創建數組公式通過同時按下鍵盤上的CTRL , SHIFT和ENTER鍵來完成。
將這些鍵按在一起的效果是用大括號包圍該函數:{}指示它現在是一個數組公式。
教程步驟
- 如果完成的對話框仍然從本教程的上一步打開,請按住鍵盤上的CTRL和SHIFT鍵,然後按下並釋放ENTER鍵。
- 如果操作正確,對話框將關閉,並在單元格F3中出現#N / A錯誤 - 我們輸入函數的單元格。
- 單元格 F3中出現#N / A錯誤,因為單元格D3和E3是空白的。 D3和E3是我們告訴函數在本教程的第5步中查找Lookup_values的單元格。 一旦數據被添加到這兩個單元格中,錯誤將被來自數據庫的信息所取代。
09年9月9日
添加搜索條件
本教程的最後一步是將搜索條件添加到我們的工作表中。
正如上一步所述,我們正在尋找匹配第1列的Widgets和第2列的Titanium的術語。
如果且僅當我們的公式在數據庫的適當列中找到兩個術語的匹配項,它才會返回第三列中的值。
教程步驟
- 點擊單元格D3。
- 鍵入Widgets並按下鍵盤上的Enter鍵。
- 點擊單元格E3。
- 鍵入Titanium並按下鍵盤上的Enter鍵。
- 供應商名稱Widgets Inc.應出現在單元格F3中 - 該功能的位置,因為它是列出銷售Titanium Widgets的唯一供應商。
- 當你點擊單元格F3的完整功能
{= INDEX(D6:F11,MATCH(D3&E3,D6:D11&E6:E11,0),3)}
出現在工作表上方的公式欄中 。
注意:在我們的例子中,鈦部件只有一個供應商。 如果有多個供應商,那麼首先在數據庫中列出的供應商將由該功能返回。