Skip to main content

使用 IF 語句創建條件下拉列表(5 個示例)

Author: Siluvia Last Modified: 2025-05-12

如果您需要創建一個根據另一個單元格中的選擇而變化的下拉列表,為下拉列表添加條件可以作為一個輔助解決方案。在創建條件下拉列表時,使用 IF 語句是一種直觀的方法,因為它通常用於測試 Excel 中的條件。本教程演示了 5 種方法,將幫助您逐步在 Excel 中創建條件下拉列表。

Conditional Drop-Down List with IF Statement

獲取範例文件:

excel icon 點擊下載範例文件


使用 IF 或 IFS 語句創建條件下拉列表

本節提供了兩種函數:IF 函數IFS 函數,幫助您在 Excel 中根據其他單元格創建條件下拉列表,並附有兩個示例。

添加單一條件,例如兩個國家及其城市

如下圖所示,您可以輕鬆地在下拉列表中切換兩個國家“美國法國”的城市。讓我們看看如何使用 IF 函數來實現這一功能。

步驟 1:創建主下拉列表

首先,您需要創建一個主下拉列表,這將作為條件下拉列表的基礎。

1. 選擇一個單元格(在此情況下為 E2),您希望插入主下拉列表的位置。轉到「數據」選項卡,選擇「數據驗證」。

Go to the Data tab, select Data Validation

2. 在「數據驗證」對話框中,按照以下步驟配置設置。

1) 停留在「設置」選項卡;
2) 在「允許」框中選擇「列表」;
3) 在「來源」框中,選擇包含要在下拉列表中顯示的值的單元格區域(此處我選擇表格的標題)。
4) 點擊「確定」按鈕。見截圖:

specify the options in the dialog box

步驟 2:使用 IF 語句創建條件下拉列表

1. 選擇要插入條件下拉列表的單元格區域(在此情況下為 E3:E6)

2. 轉到「數據」選項卡,選擇「數據驗證」。

3. 在「數據驗證」對話框中,您需要進行以下配置。

1) 停留在「設置」選項卡;
2) 在「允許」下拉列表中選擇「列表」
3) 在「來源」框中輸入以下公式;
=IF($E$2=$B$2,$B$3:$B$6,$C$3:$C$6)
4) 點擊「確定」按鈕。見截圖:

specify the options in the dialog box with an IF statement

注意:此公式告訴 Excel:如果 E2 的值等於 B2 的值,則顯示 B3:B6 區域的所有值。否則,顯示 C3:C6 區域的值。
其中
1) E2 是您在步驟 1 中指定的包含標題的下拉列表單元格。
2) B2 是原始區域的第一個標題單元格。
3) B3:B6 包含美國的城市。
4) C3:C6 包含法國的城市。
結果

條件下拉列表現在已完成。

如下圖所示,如果您想選擇美國的一個城市,請點擊 E2 從下拉列表中選擇「美國的城市」。然後在 E2 下方的單元格中選擇屬於美國的任何城市。要選擇法國的一個城市,執行相同的操作。

注意:
1) 上述方法僅適用於兩個國家及其城市,因為 IF 函數用於測試條件,並在條件滿足時返回一個值,在條件不滿足時返回另一個值。
2) 如果在此案例中添加更多國家和城市,則可以使用以下嵌套 IF 函數和 IFS 函數來幫助。

添加多個條件,例如超過兩個國家及其城市

如下圖所示,有兩個表格。單列表格包含不同的國家,而多列表格包含這些國家的城市。這裡我們需要創建一個條件下拉列表,該列表包含會根據您在 E10 中選擇的國家而改變的城市,請按照以下步驟完成。

步驟 1:創建包含所有國家的下拉列表

1. 選擇一個單元格(此處我選擇 E10),您希望顯示國家的位置,轉到「數據」選項卡,點擊「數據驗證」。

2. 在「 數據驗證」對話框中,您需要:

1) 停留在「設置」選項卡;
2) 在「允許」下拉列表中選擇「列表」
3) 在「來源」框中選擇包含國家的區域;
4) 點擊「確定」按鈕。見截圖:

specify the options in the dialog box

包含所有國家的下拉列表現在已完成。

步驟 2:為每個國家的城市命名單元格區域

1. 選擇整個城市表的區域,轉到「公式」選項卡,點擊「從選擇創建」。

Select the data range of the cities, go to the Formulas tab, click Create from Selection.

2. 在「從選擇創建名稱」對話框中,僅勾選「首行」選項並點擊「確定」按鈕。

check the Top row option in the dialog box

注意:
1) 此步驟使您可以同時創建多個命名區域。這裡行標題被用作區域名稱。

create multiple named ranges by this step

2) 默認情況下,名稱管理器在定義新名稱時不允許有空格。如果標題中有空格,Excel 將把它們轉換為 (_)。例如,美國將被命名為 United_States。這些區域名稱將在以下公式中使用。
步驟 3:創建條件下拉列表

1. 選擇一個單元格(此處我選擇 E11)以輸出條件下拉列表,轉到「數據」選項卡,選擇「 數據驗證」。

2. 在「數據驗證」對話框中,您需要:

1) 停留在「設置」選項卡;
2) 在「允許」下拉列表中選擇「列表」
3) 在「來源」框中輸入以下公式;
=IF($E$10="Japan",Japan,IF(E10="Tunisia",Tunisia,IF(E10="United States",United_States, France)))
4) 點擊「確定」按鈕。

specify the options in the dialog box to create a conditional drop-down list

注意
如果您使用的是 Excel 2019 或更高版本,您可以應用 IFS 函數來評估多個條件,其作用與嵌套 IF 相同,但方式更清晰。在此情況下,您可以嘗試以下 IFS 公式來達到相同的效果。
=IFS(E10="Japan",Japan,E10="Tunisia",Tunisia,E10="United States",United_States,E10="France", France)
在上述兩個公式中,
1) E10 是您在步驟 1 中指定的包含國家的下拉列表單元格;
2) 雙引號中的文本代表您將在 E10 中選擇的值,而沒有雙引號的文本是您在步驟 2 中指定的區域名稱;
3) 第一個 IF 語句 IF($E$10="日本",日本) 告訴 Excel:
如果 E10 等於“日本”,則只在該下拉列表中顯示名為“日本”的區域中的值。第二和第三個 IF 語句的意思相同。
4) 最後一個 IF 語句 IF(E10="美國",United_States, France) 告訴 Excel:
如果 E10 等於“美國”,則只在該下拉列表中顯示名為“United_States”的區域中的值。否則,它將顯示名為“France”的區域中的值。
5) 如果需要,您可以向公式中添加更多 IF 語句。
6) 點擊了解更多關於 Excel IF 函數IFS 函數的信息。
結果


只需幾次點擊即可使用 Kutools for Excel 創建條件下拉列表

上述方法可能對大多數 Excel 用戶來說比較繁瑣。如果您想要更高效且直接的解決方案,強烈推薦使用 Kutools for Excel動態下拉列表 功能,它可以幫助您只需幾次點擊即可創建條件下拉列表。

Kutools for Excel 提供超過 300 種進階功能,簡化複雜任務,提升創造力與效率。 結合 AI 能力,Kutools 能夠精準自動化任務,讓數據管理變得輕而易舉。Kutools for Excel 的詳細資訊...免費試用...

如您所見,整個操作只需幾次點擊即可完成。您只需要:

1. 在對話框中,選擇模式 A:2 級別模式部分;
2. 選擇您需要創建條件下拉列表的列;
3. 選擇一個輸出區域。
4. 點擊「確定」。
注意
1) Kutools for Excel 提供 30 天免費試用且無限制,前往下載
2) 除了創建 2 級下拉列表外,您還可以輕鬆創建 3 至 5 級下拉列表。查看本教程:快速創建多級別下拉列表

IF 函數的更好替代方案:INDIRECT 函數

作為 IF 和 IFS 函數的替代方案,您可以使用 INDIRECTSUBSTITUTE 函數的組合來創建條件下拉列表,這比我們上面提供的公式更簡單。

以上述多條件的相同示例(如下圖所示)。在此,我將向您展示如何使用 INDIRECT 和 SUBSTITUTE 函數的組合在 Excel 中創建條件下拉列表。

1. 在單元格 E10 中,創建包含所有國家的主下拉列表。遵循上述步驟 1

2. 為每個國家的城市命名單元格區域。遵循上述步驟 2

3. 使用 INDIRECT 和 SUBSTITUTE 函數創建條件下拉列表。

選擇一個單元格(在此情況下為 E11)以輸出條件下拉列表,轉到「數據」選項卡,選擇「數據驗證」。在「數據驗證」對話框中,您需要:

1) 停留在「設置」選項卡;
2) 在「允許」下拉列表中選擇「列表」
3) 在「來源」框中輸入以下公式;
=INDIRECT(SUBSTITUTE(E10," ","_"))
4) 點擊「確定」按鈕。

specify the options in the dialog box by INDIRECT function

您現在已成功使用 INDIRECT 和 SUBSTITUTE 函數創建了一個條件下拉列表。

最佳辦公效率工具

🤖 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%,每天為您減少數百次鼠標點擊!