Skip to main content

在 Excel 中創建搜索框——逐步指南

Author: Siluvia Last Modified: 2025-05-12

在 Excel 中創建一個搜索框可以通過讓過濾和快速訪問特定數據變得更加容易,從而增強電子表格的功能。本指南涵蓋了幾種實現搜索框的方法,適用於不同版本的 Excel。無論您是初學者還是高級用戶,這些步驟將幫助您使用 FILTER 函數、條件格式和各種公式等功能設置動態搜索框。

A screenshot of a dynamic search box in Excel


輕鬆使用 FILTER 函數創建搜索框

注意:FILTER 函數適用於 Excel 2019 及更高版本,以及 Excel for Microsoft 365。
FILTER 函數提供了一種簡單直接的方式來動態搜索和過濾數據。使用 FILTER 函數的好處包括:
  • 當您的數據發生變化時,此函數會自動更新輸出結果。
  • FILTER 函數可以返回任意數量的結果,從單行到成千上萬行不等,具體取決於數據集中有多少條目符合您設定的條件。

接下來,我將向您展示如何使用 FILTER 函數在 Excel 中創建搜索框。

步驟 1:插入文本框並配置屬性
提示:如果您只需要在單元格中輸入內容進行搜索,而不需要顯眼的搜索框,則可以跳過此步驟,直接進入步驟 2
  1. 轉到「開發工具」選項卡,點擊「插入」>「文本框 (ActiveX 控件)」。
    提示:如果功能區未顯示「開發工具」選項卡,您可以按照以下教程中的說明啟用它:如何在 Excel 功能區中顯示/顯示開發工具選項卡?
    A screenshot of the Developer tab in Excel with the Insert option selected for ActiveX Text Box
  2. 鼠標指針將變成十字形,然後您需要拖動鼠標以在工作表中繪製文本框,放置在您希望的位置。完成繪製後,釋放鼠標。
    A screenshot of the cursor in Excel set to draw a text box on the worksheet
  3. 右鍵單擊文本框,然後從快捷菜單中選擇「屬性」。
    A screenshot of right-clicking on the text box in Excel to open the Properties menu
  4. 在「屬性」窗格中,通過在「LinkedCell」字段中輸入單元格引用,將文本框與單元格關聯起來。例如,輸入「J2」可確保在文本框中輸入的任何數據都會自動更新到單元格 J2 中,反之亦然。
    A screenshot of the Properties pane in Excel where the LinkedCell field is entered
  5. 點擊「開發工具」選項卡下的「設計模式」按鈕,退出「設計模式」。
    A screenshot of the Developer tab in Excel with Design Mode selected

現在,文本框允許您輸入文字。

步驟 2:應用 FILTER 函數
  1. 在使用 FILTER 函數之前,請先將原始標題行複製到新區域。這裡我將標題行放在搜索框下方。
    提示:這種方法使用戶能夠在同一列標題下清楚地看到與原始數據對應的結果。
    A screenshot showing the header row copied under the search box in Excel to display search results
  2. 選擇第一個標題下的單元格(例如,本例中的 I5),在其中輸入以下公式,然後按下「Enter」鍵以獲取結果。
    =FILTER(Sheet2!$A$5:$G$281,Sheet2!$B$5:$B$281=J2,"No data found")
    A screenshot of the FILTER function formula entered in Excel to filter data based on search input
    如上面的截圖所示,由於文本框目前沒有輸入內容,因此公式在 I5 中顯示「未找到數據」的結果。
注意:
  • 在此公式中:
    • "Sheet2!$A$5:$G$281": $A$5:$G$281 是您要在 Sheet2 上過濾的資料區域。
    • "Sheet2!$B$5:$B$281=J2": 此部分定義了用於過濾範圍的條件。它檢查 Sheet2 的 B 列中從第 5 行到第 281 行的每個單元格,看是否等於 J2 單元格中的值。J2 是與搜索框關聯的單元格。
    • "未找到數據": 如果 FILTER 函數未找到任何 B 列中的值等於 J2 單元格值的行,則會返回「未找到數據」。
  • 此方法不區分大小寫,這意味著無論您輸入大寫或小寫字母,它都能匹配文本。
結果:測試搜索框

現在我們來測試一下搜索框。在這個例子中,當我在搜索框中輸入客戶名稱時,相應的結果將立即被過濾並顯示出來。

A screenshot showing the search box in action with results filtered and displayed based on the input


使用條件格式創建搜索框

條件格式可以用來突出顯示與搜索詞匹配的數據,間接地創建搜索框效果。此方法不會過濾掉數據,但會視覺引導您找到相關的單元格。本節將向您展示如何使用條件格式在 Excel 中創建搜索框。

步驟 1:插入文本框並配置屬性
提示:如果您只需要在單元格中輸入內容進行搜索,而不需要顯眼的搜索框,則可以跳過此步驟,直接進入步驟 2
  1. 轉到「開發工具」選項卡,點擊「插入」>「文本框 (ActiveX 控件)」。
    提示:如果功能區未顯示「開發工具」選項卡,您可以按照以下教程中的說明啟用它:如何在 Excel 功能區中顯示/顯示開發工具選項卡?
    A screenshot showing the text box option selected in Excel's Developer tab for creating a search box
  2. 鼠標指針將變成十字形,然後您需要拖動鼠標以在工作表中繪製文本框,放置在您希望的位置。完成繪製後,釋放鼠標。
    A screenshot showing the process of drawing a text box in Excel to place for search input
  3. 右鍵單擊文本框,然後從快捷菜單中選擇「屬性」。
    A screenshot showing the Properties menu in Excel where a text box is linked to a cell
  4. 在「屬性」窗格中,通過在「LinkedCell」字段中輸入單元格引用,將文本框與單元格關聯起來。例如,輸入「J3」可確保在文本框中輸入的任何數據都會自動更新到單元格 J3 中,反之亦然。
    A screenshot of the Properties pane where a text box is linked to cell J3 in Excel
  5. 點擊「開發工具」選項卡下的「設計模式」按鈕,退出「設計模式」。
    A screenshot of the Excel Developer tab with the Design Mode option highlighted to exit design mode

現在,文本框允許您輸入文字。

步驟 2:應用條件格式進行數據搜索
  1. 選擇要搜索的整個數據範圍。這裡我選擇範圍 A3:G279。
  2. 在「開始」選項卡下,點擊「條件格式」>「新建規則」。
    A screenshot showing the Conditional Formatting New Rule option selected in Excel's Home tab
  3. 在「新建格式規則」對話框中:
    1. 在「選擇規則類型」選項中選擇「使用公式確定要設置格式的單元格」。
    2. 在「為符合此公式的值設置格式」框中輸入以下公式。
      =$B3=$J$3
      這裡,「$B3」代表所選範圍內您希望與搜索條件匹配的第一列中的第一個單元格,而「$J$3」是與搜索框關聯的單元格。
    3. 點擊「格式」按鈕,為搜索結果指定填充顏色。
    4. 點擊「確定」按鈕。參見截圖:
      A screenshot showing the New Formatting Rule dialog box with a formula entered for Conditional Formatting in Excel
結果

現在我們來測試一下搜索框。在這個例子中,當我在搜索框中輸入客戶名稱時,包含該客戶名稱的相應行將立即以指定的填充顏色突出顯示。

A screenshot showing the search box in action, highlighting matching rows in Excel based on the search input

注意:此方法不區分大小寫,這意味著無論您輸入大寫或小寫字母,它都能匹配文本。

使用公式組合創建搜索框

如果您未使用最新版本的 Excel,並且不希望僅僅突出顯示行,那麼本節介紹的方法可能會有所幫助。您可以使用 Excel 公式組合在任何版本的 Excel 中創建功能性搜索框。請按照以下步驟操作。

步驟 1:從搜索列創建唯一值列表
提示:新範圍中的唯一值是我將在最終搜索框中使用的條件。
  1. 在這種情況下,我選擇並複製範圍「B4:B281」到新的工作表中。
  2. 將範圍粘貼到新工作表後,保持粘貼的數據選中狀態,轉到「數據」選項卡並選擇「刪除重複項」。
    A screenshot of the Remove Duplicates option in Excel
  3. 在打開的「刪除重複項」對話框中,點擊「確定」按鈕。
    A screenshot of the Remove Duplicates dialog box in Excel
  4. 隨後會彈出一個「Microsoft Excel」提示框,顯示刪除了多少個重複項。點擊「確定」。
    A screenshot of the Remove Duplicates confirmation prompt in Excel
  5. 刪除重複項後,選擇列表中的所有唯一值(不包括標題),並通過在「名稱」框中輸入來為此範圍命名。這裡我將範圍命名為「Customer」。
    A screenshot of the Assign Name dialog box in Excel
步驟 2:插入組合框並配置屬性
提示:如果您只需要在單元格中輸入內容進行搜索,而不需要顯眼的搜索框,則可以跳過此步驟,直接進入步驟 3
  1. 返回到包含要搜索數據集的工作表。轉到「開發工具」選項卡,點擊「插入」>「組合框 (ActiveX 控件)」。
    提示:如果功能區未顯示「開發工具」選項卡,您可以按照以下教程中的說明啟用它:如何在 Excel 功能區中顯示/顯示開發工具選項卡?
    A screenshot of the Combo Box insertion in Excel
  2. 鼠標指針將變成十字形,然後您需要拖動鼠標以在工作表中繪製組合框,放置在您希望的位置。完成繪製後,釋放鼠標。
    A screenshot of the Combo Box drawn on an Excel worksheet
  3. 右鍵單擊組合框,然後從快捷菜單中選擇「屬性」。
    A screenshot of the Combo Box properties in Excel
  4. 在「屬性」窗格中:
    1. 通過在「LinkedCell」字段中輸入單元格引用,將組合框與單元格關聯起來。這裡我輸入「M2」。
      提示:指定此字段可確保在組合框中輸入的任何數據都會自動更新到單元格 M2 中,反之亦然。
    2. 在「ListFillRange」字段中,輸入您在步驟 1 中為唯一列表指定的「範圍名稱」。
    3. 將「MatchEntry」字段更改為「2 – fmMatchEntryNone」。
    4. 關閉「屬性」窗格。
      A screenshot of the Combo Box properties pane in Excel
  5. 點擊「開發工具」選項卡下的「設計模式」按鈕,退出設計模式。
    A screenshot of the exit Design Mode button in Excel

現在,您可以從組合框中選擇任何項目,或者輸入文本進行搜索。

步驟 3:應用公式
  1. 在原始數據範圍旁邊創建三個輔助列。參見截圖:
    A screenshot of the helper columns setup in Excel
  2. 在第一個輔助列標題下的單元格(H5)中,輸入以下公式並按下「Enter」。
    =ROWS($B$5:B5)
    這裡「B5」是包含要搜索列中第一位客戶名稱的單元格。
    A screenshot of the first formula entered in Excel for helper columns
  3. 雙擊公式單元格的右下角,後續單元格將自動填充相同的公式。
    A screenshot of the automatic filling of formula cells in Excel
  4. 在第二個輔助列標題下的單元格(I5)中,輸入以下公式並按下「Enter」。然後雙擊公式單元格的右下角,自動填充下方單元格中的相同公式。
    =IF(ISNUMBER(SEARCH($M$2,B5)),H5,"")
    這裡「M2」是與組合框關聯的單元格。
    A screenshot of the second formula entered for helper columns in Excel
  5. 在第三個輔助列標題下的單元格(J5)中,輸入以下公式並按下「Enter」。然後雙擊公式單元格的右下角,自動填充下方單元格中的相同公式。
    =IFERROR(SMALL($I$5:$I$281,H5),"") 
    A screenshot of the third formula entered for helper columns in Excel
  6. 將原始標題行複製到新區域。這裡我將標題行放在搜索框下方。
    A screenshot of the header row copied in Excel for the result range
  7. 選擇第一個標題下的單元格(例如,本例中的 L5),在其中輸入以下公式,然後按下「Enter」鍵。
    =IFERROR(INDEX($A$5:$G$281,$J5,COLUMNS($L$4:L4)),"")
    這裡「A5:G281」是您希望在結果單元格中顯示的整個數據範圍。
    A screenshot of the result formula entered under the header in Excel
  8. 選擇此公式單元格,拖動「填充柄」向右然後向下,將公式應用到相應的列和行。
    A screenshot of the formula applied to the result range in Excel
    注意:
    • 由於搜索框中沒有輸入內容,因此公式結果將顯示原始數據。
    • 此方法不區分大小寫,這意味著無論您輸入大寫或小寫字母,它都能匹配文本。
結果

現在我們來測試一下搜索框。在這個例子中,當我從組合框中輸入或選擇客戶名稱時,包含該客戶名稱的相應行將被過濾並立即顯示在結果範圍中。

A screenshot of the final search box result in Excel


在 Excel 中創建搜索框可以顯著改善您與數據的交互方式,使您的電子表格更具動態性和用戶友好性。無論您選擇 FILTER 函數的簡潔性、條件格式的視覺輔助,還是公式組合的多功能性,每種方法都提供了寶貴的工具來增強您的數據處理能力。嘗試這些技術,找到最適合您特定需求和數據場景的方法。對於那些渴望深入探索 Excel 功能的人,我們的網站擁有大量教程。在這裡發現更多 Excel 技巧和竅門


最佳辦公效率工具

🤖 Kutools AI 助手:基於智能執行方式革新數據分析:智能執行   |  生成代碼  |  創建自訂公式  |  分析數據並生成圖表  |  調用 Kutools 函數
熱門功能查找、標記重複值或識別重複項   |  刪除空行   |  合併列或單元格而不丟失數據   |   四捨五入無需公式 ...
高級 LOOKUP多條件 VLookup    多值 VLookup  |   多表查找   |   模糊查找 ....
高級下拉列表快速創建下拉列表   |  依賴下拉列表   |  多選下拉列表 ....
列管理器添加特定數量的列  |  移動列  |  切換隱藏列的可見狀態  |  比較區域和列 ...
特色功能網格聚焦   |  設計檢視   |   增強編輯欄    工作簿與工作表管理器   |  資源庫(自動文本)   |  日期提取器   |  合併資料   |  加密/解密儲存格    按列表發送電子郵件   |  超級篩選   |   特殊篩選(篩選粗體/斜體/刪除線...) ...
頂級 15 種工具集12 個文本工具添加文本刪除特定字符、...)   |   50+ 圖表 類型甘特圖、...)   |   40+ 實用 公式基於生日計算年齡、...)   |   19 個插入工具插入QR碼根據路徑插入圖片、...)   |   12 個轉換工具金額轉大寫匯率轉換、...)   |   7 個合併與分割工具高級合併行分割儲存格、...)   |   ... 還有更多

使用 Kutools for Excel 提升您的 Excel 技巧,體驗前所未有的高效。 Kutools for Excel 提供超過 300 種高級功能來提高生產力並節省時間。  點擊這裡獲取您最需要的功能...


Office Tab 將標籤式界面帶到 Office,讓您的工作更加輕鬆

  • 在 Word、Excel、PowerPoint、Publisher、Access、Visio 和 Project 中啟用標籤式編輯和閱讀。
  • 在同一窗口的新標籤中打開和創建多個文檔,而不是在新窗口中。
  • 將您的生產力提高 50%,每天為您減少數百次鼠標點擊!