Excel 下拉列表:创建、编辑、删除及更多高级操作
下拉列表与列表框类似,可让用户从预设选项中轻松选择一个值。本教程将带您掌握 Excel 中下拉列表的基本操作——创建、编辑与删除;同时还将介绍一系列高级技巧,助您进一步拓展下拉列表的功能,高效应对更多 Excel 应用场景。
目录:[ 隐藏 】
创建简单下拉列表
要使用下拉列表,首先需掌握其创建方法。本节为您介绍在 Excel 中创建下拉列表的 6 种实用方式。
根据单元格区域创建下拉列表
接下来,我们将为您演示如何在 Excel 中基于单元格区域创建下拉列表。请按照以下步骤操作:
1. 请选择用于放置下拉列表的单元格区域。

提示:按住 Ctrl 键并逐个点击单元格,即可为多个不连续的单元格批量创建下拉列表。
2. 单击“数据”>“数据验证”>“数据验证”。

3. 在“数据验证”对话框中,切换至“设置”选项卡,并按以下方式配置:

注意:

下拉列表现已创建完成。单击下拉列表所在的单元格时,旁边将显示一个箭头;点击该箭头即可展开列表,并从中选择所需选项。

根据表格创建动态下拉列表
您可以将数据区域转换为 Excel 表格,然后基于该表格区域创建动态下拉列表。
1. 选中原始数据区域,然后按下“Ctrl”+“T”键。
2. 在弹出的“创建表”对话框中单击“确定”,即可将数据区域轻松转换为表格。

3. 选择您希望放置下拉列表的单元格区域,然后依次单击“数据”>“数据验证”>“数据验证”。
4. 在“数据验证”对话框中,请执行以下操作:

动态下拉列表现已创建完成。当您在表格区域中添加或删除数据时,下拉列表中的选项将自动同步更新。
使用公式创建动态下拉列表
除了基于表格区域创建动态下拉列表外,您还可以借助公式在 Excel 中打造动态下拉列表。
1. 请选择您希望用于显示下拉列表的单元格。
2. 单击“数据”>“数据验证”>“数据验证”。
3. 在“数据验证”对话框中,请按以下方式配置:
=OFFSET($A$13,0,0,COUNTA($A$13:$A$24),1) 
动态下拉列表现已创建完成。当您在指定区域中添加或删除数据时,下拉列表中的选项将自动同步更新。
根据命名区域创建下拉列表
您还可以在 Excel 中基于命名区域轻松创建下拉列表。
1. 首先,创建一个命名区域:选中您希望用于定义命名区域的单元格范围,在“名称”框中输入名称,然后按下 Enter 键。

2. 单击“数据”>“数据验证”>“数据验证”。
3. 在“数据验证”对话框中,请按以下方式配置:

现已成功创建基于命名区域数据的下拉列表。
根据其他工作簿创建下拉列表
假设有一个名为“SourceData”的工作簿,您希望在另一个工作簿中基于该“SourceData”工作簿中的数据创建下拉列表,请按以下步骤操作:
1. 打开“SourceData”工作簿,选中您希望用于创建下拉列表的数据,在“名称”框中输入一个单元格名称,然后按 Enter 键。
此处我将该区域命名为“City”。

2. 打开要插入下拉列表的工作表,单击“公式”>“定义名称”。

3. 在“新建名称”对话框中,请按以下方式配置,以基于“SourceData”工作簿中创建的单元格名称来定义命名区域:
=SourceData.xlsx!City 
注意:
4. 打开需插入下拉列表的工作簿,选中目标单元格,然后依次单击“数据”>“数据验证”>“数据验证”。

5. 在“数据验证”对话框中,请按以下方式配置:

现已成功在所选区域中插入下拉列表,其下拉选项源自另一工作簿。

使用一款强大的工具轻松创建下拉列表
在此,我强烈推荐“Kutools for Excel”的“创建简单下拉列表”功能。借助它,您可轻松基于特定单元格的值,或直接调用 Excel 中预设的自定义列表,快速生成下拉列表。
1. 选择要插入下拉列表的单元格,然后单击“Kutools” > “下拉列表” > “创建简单下拉列表”。

2. 在“创建简单下拉列表”对话框中,请按以下方式配置:

注意:若要基于 Excel 中预设的自定义列表创建下拉列表,请在“来源”部分选择“自定义列表”选项,从“自定义列表”框中选取所需列表,然后单击“确定”按钮。

现已成功在所选区域中插入下拉列表。
Kutools for Excel——通过 300 多款必备工具全面增强 Excel 功能,助您工作更快速、更轻松,并借助 AI 功能实现更智能的数据处理与高效办公!立即获取
编辑下拉列表
如果您想编辑下拉列表,本节介绍的方法将为您提供有力支持。
编辑基于单元格区域的下拉列表
要编辑基于单元格区域的下拉列表,请按以下步骤操作:
1. 请选择包含待编辑下拉列表的单元格,然后依次单击“数据”>“数据验证”>“数据验证”。

2. 在“数据验证”对话框中,更新“来源”框中的单元格引用,然后单击“确定”按钮。

编辑基于命名区域的下拉列表
假设您在命名区域中添加或删除了值,而下拉列表正是基于该命名区域创建的。要让下拉列表及时显示更新后的值,请按以下步骤操作:
1. 单击“公式”>“名称管理器”。
提示:按下“Ctrl”+“F3”组合键,即可快速打开“名称管理器”窗口。

2. 在“名称管理器”窗口中,请按以下方式配置:
以选择下拉列表的更新范围;
3. 随后将弹出“Microsoft Excel”对话框,请单击“是”按钮以保存更改。

此时,基于该命名区域的下拉列表已同步更新。
删除下拉列表
本节将为您详细介绍如何在 Excel 中轻松删除下拉列表。
使用 Excel 内置功能删除下拉列表
Excel 提供了内置功能,助您轻松删除工作表中的下拉列表。请按以下步骤操作:
1. 请选择包含要删除的下拉列表的单元格区域。
2. 单击“数据”>“数据验证”>“数据验证”。

3. 在“数据验证”对话框中,单击“全部清除”按钮,然后点击“确定”保存更改。

现在已从选择区域中删除下拉列表。
使用一款强大的工具轻松删除下拉列表
“Kutools for Excel”提供了一款便捷工具——“清除数据验证限制”,助您轻松一键移除一个或多个选定区域中的下拉列表。请按以下步骤操作:
1. 请选择包含您要删除的下拉列表的单元格区域。
2. 单击“Kutools”>“限制输入”>“清除数据验证限制”。参见截图:

3. 随后将弹出“Kutools for Excel”对话框,询问您是否要清除下拉列表,请单击“确定”按钮。

随后,所选区域中的下拉列表将立即被移除。
Kutools for Excel——通过 300 多款必备工具全面增强 Excel 功能,助您工作更快速、更轻松,并借助 AI 功能实现更智能的数据处理与高效办公!立即获取
为下拉列表添加颜色
在某些情况下,您可能需要创建一个彩色编码的下拉列表,以便一眼就能区分其中的数据。本节将为您详细介绍两种实现方法。
使用使用条件格式为下拉列表添加颜色
您可以为包含下拉列表的单元格设置条件格式规则,实现彩色编码效果。请按以下步骤操作:
1. 请选择您希望为其下拉列表设置彩色编码的单元格。
2. 单击“开始” > “条件格式” > “管理规则”。

3. 在“条件格式规则管理器”对话框中,单击“新建规则”按钮。

4. 在“新建格式规则”对话框中,请按以下方式配置:


5. 返回“使用条件格式规则管理”对话框后,重复上述步骤 3 和 4,为其他下拉选项指定颜色。完成颜色设置后,单击“确定”保存更改。

从现在起,当您在下拉列表中选择某一项时,单元格将根据所选文本自动以指定的背景颜色高亮显示。

使用一款强大的工具轻松为下拉列表添加颜色
这里为您介绍“Kutools for Excel”的“带颜色的下拉列表”功能,助您轻松为 Excel 下拉列表添加醒目色彩。
1. 请选择您希望为其下拉列表添加颜色的单元格。
2. 单击“Kutools” > “下拉列表” > “带颜色的下拉列表”。

3. 在“带颜色的下拉列表”对话框中,请按以下步骤操作。

提示:若想根据下拉列表的选择高亮整行,请在“应用到”部分选择“整行”选项,然后在“高亮行区域”框中指定要高亮显示的行。

现在下拉列表已实现彩色编码,如下方截图所示。
根据下拉列表选择高亮显示单元格

高亮行区域根据下拉列表选择

Kutools for Excel——通过 300 多款必备工具全面增强 Excel 功能,助您工作更快速、更轻松,并借助 AI 功能实现更智能的数据处理与高效办公!立即获取
在 Excel 或 Google 表格中创建依赖型下拉列表
依赖型下拉列表能根据第一个下拉列表中所选的值动态显示相应选项。如果您希望在 Excel 工作表或 Google 表格中创建依赖型(级联)下拉列表,本节提供的方法将为您提供有力支持。
在 Excel 工作表中创建依赖型下拉列表
下方演示展示了 Excel 工作表中的级联下拉列表。
请单击 如何在 Excel 中创建依赖型级联下拉列表?,查看分步指南教程。

在 Google 表格中创建依赖型下拉列表
想在 Google 表格中创建依赖型下拉列表?立即参阅 如何在 Google 表格中创建依赖型下拉列表?
创建可搜索的下拉列表
当工作表中的下拉列表包含大量项目时,从中精准定位特定选项可能颇具挑战。但如果您记得目标项目的首字母或连续几个字符,便可借助下拉列表内置的搜索功能,快速筛选并锁定所需内容。本节将为您演示如何在 Excel 中创建支持搜索的下拉列表。
假设您要基于的数据位于 Sheet 1 的 A 列(如下方截图所示)。请按照以下步骤,在 Excel 中利用这些数据创建可搜索的下拉列表。

1. 首先,在源数据列表旁新建一个辅助列,并输入数组公式。
在此例中,我选择单元格 B2,输入下方公式,然后按下“Ctrl”+“Shift”+“Enter”组合键,即可获得第一个结果。
=IFERROR(INDEX($A$2:$A$50,SMALL(IFERROR(MATCH(IF(FIND(CELL("contents"),$A$2:$A$50)>0,$A$2:$A$50,""),$A$2:$A$50,0),""),ROW(A1))),"") 选中第一个结果单元格,然后向下拖动其“填充柄”,直至列表末尾。

注意:在此数组公式中,$A$2:$A$50 是您用于创建下拉列表的源数据范围,请根据实际数据区域进行调整。
2. 单击“公式”>“定义名称”。

3. 在“编辑名称”对话框中,请按以下方式配置:
=OFFSET(Sheet1!$B$2,0,0,COUNTA(Sheet1!$B$2:$B$50)-COUNTIF(Sheet1!$B$2:$B$50,""),1) 
现在,您需要基于命名区域创建下拉列表。在本例中,我将在 Sheet 2 中创建一个可搜索的下拉列表。
4. 打开 Sheet 2,选择下拉列表所在的单元格区域,然后依次单击“数据” > “数据验证” > “数据验证”。

5. 在“数据验证”对话框中,请按以下步骤操作。


6. 右键单击工作表标签(Sheet 2),然后从快捷菜单中选择“查看代码”。

7. 在打开的“Microsoft Visual Basic for Applications”窗口中,将下方的 VBA 代码复制到代码编辑器内。
VBA 代码:在 Excel 中创建可搜索的下拉列表
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Application.Calculate
End Sub 
8. 按下“Alt”+“Q”组合键,即可关闭“Microsoft Visual Basic for Applications”窗口。
现在,可搜索的下拉列表已创建完成。只需在下拉单元格中输入一个或多个连续字符,然后单击下拉箭头,即可在列表中看到根据输入内容筛选出的项目。如下图所示:

注意:此方法区分大小写。
创建下拉列表但显示不同值
假设您已创建了一个下拉列表,并希望在选择某项时,单元格中显示其他内容。例如,如下方演示所示,您基于国家名称列表创建了下拉列表,当从列表中选择某个国家时,下拉单元格将自动显示该国家对应的缩写。本节将通过 VBA 方法帮您实现这一功能。

1. 在源数据(国家名称列)右侧创建一个新列,填入您希望在下拉列表中显示的国家名称缩写。

2. 同时选中国家名称列表和缩写列表,在“名称”框中输入名称后,按下 Enter 键。

3. 选择下拉列表所在的单元格区域(此处选择 D2:D8),然后依次单击“数据” > “数据验证” > “数据验证”。

4. 在“数据验证”对话框中,请按以下方式配置:

5. 创建下拉列表后,右键单击工作表标签,然后从快捷菜单中选择“查看代码”。

6. 在打开的“Microsoft Visual Basic for Applications”窗口中,将下方的 VBA 代码复制到代码编辑器内。
VBA 代码:在下拉列表中显示不同值
Private Sub Worksheet_Change(ByVal Target As Range)
'Updateby Extendoffice 20201027
selectedNa = Target.Value
If Target.Column = 4 Then
selectedNum = Application.VLookup(selectedNa, ActiveSheet.Range("dropdown"), 2, False)
If Not IsError(selectedNum) Then
Target.Value = selectedNum
End If
End If
End Sub 注意:
7. 按下“Alt”+“Q”组合键,即可关闭“Microsoft Visual Basic for Applications”窗口。
从现在起,当您在下拉列表中选择某个国家名称时,单元格中将自动显示该国家对应的缩写。

创建带复选框的下拉列表
许多 Excel 用户倾向于创建一个包含多个复选框的下拉列表,以便通过勾选复选框轻松选择多个项目。
如下方演示所示,当您单击包含下拉列表的单元格时,会弹出一个列表框,其中每个项目前均配有复选框。勾选相应复选框,即可将对应项目显示在单元格中。
想在 Excel 中创建带复选框的下拉列表?请参阅 如何在 Excel 中创建带多个复选框的下拉列表?。

为下拉列表添加自动补全功能
如果您的数据验证下拉列表包含大量项目,您可能需要反复滚动才能找到所需选项,或者手动完整输入整个词组。若能在输入首字母时自动触发下拉列表的智能补全功能,操作将轻松许多。
如需在 Excel 工作表中实现下拉列表自动补全功能,请参阅 如何在 Excel 下拉列表中输入时自动补全?。

根据下拉列表的选择筛选数据
本节将演示如何通过应用公式创建下拉列表筛选器,从而根据下拉选项动态提取数据。

1. 首先,您需要创建一个下拉列表,其中包含用于提取数据的特定值。
提示:请按照上述步骤 在 Excel 中创建下拉列表。
使用唯一项列表创建下拉列表
如果您的数据区域中包含重复项,但不希望下拉列表中显示重复内容,可按以下方式创建唯一项列表。
1)按“Ctrl”+“C”键复制用于创建下拉列表的单元格,然后将其粘贴到新区域。
2)在新区域中选择单元格,然后单击“数据”>“删除重复项”。

3)在“删除重复项”对话框中,单击“确定”按钮。

4)随后将弹出“Microsoft Excel”提示框,显示已删除的重复项数量,请单击“确定”。

现在您已获得唯一项列表,可据此创建下拉列表。
2. 接下来,请按以下方式创建三个辅助列。
=ROWS($A$2:A2) 
=IF(A2=$H$2,D2,"") 
=IFERROR(SMALL($E$2:$E$17,D2),"") 
3. 基于原始数据区域创建一个新区域,并使用以下公式提取并输出所需数据。
=IFERROR(INDEX($A$2:$C$17,$F2,COLUMNS($J$2:J2)),"") 

注意:
现已创建下拉列表筛选器,您可轻松根据所选内容从原始数据区域中提取所需数据。

从下拉列表中选择多个项目
默认情况下,下拉列表每次仅允许用户在一个单元格中选择一项,重新选择时会覆盖先前选定的内容。但如果您希望从下拉列表中多选,并将所有选中项一并显示在该单元格中(如下方演示所示),该如何实现?
如需在 Excel 中从下拉列表中选择多个项,请参阅 如何在 Excel 中创建支持多选或多值的下拉列表?。本教程详细介绍了两种实用方法,助您轻松解决此问题!

为下拉列表设置默认(预选)值
默认情况下,下拉列表单元格显示为空白,仅在单击时才显示下拉箭头。如何快速识别工作表中哪些单元格包含下拉列表?
本节将为您演示如何在 Excel 中为下拉列表设置默认(预选)值,请按以下步骤操作。

在应用以下两种方法前,请先创建一个下拉列表并完成如下配置。
1. 请选择下拉列表对应的单元格,然后依次单击“数据”>“数据验证”>“数据验证”。
提示:如果您已创建下拉列表,请选中包含该下拉列表的单元格,然后依次单击“数据”>“数据验证”>“数据验证”。

2. 在“数据验证”对话框中,请按以下方式配置:


创建下拉列表后,请使用以下任一方法为其设定默认值。
使用公式为下拉列表设置默认值
您可以使用以下公式,为按照上述步骤创建的下拉列表设置默认值。
1. 请选择下拉列表单元格,输入以下公式后按“Enter”键,即可显示默认值。若下拉列表单元格为连续区域,可拖动结果单元格的“填充柄”,将公式快速应用至其他单元格。
=IF(C2="", "--Choose item from the list--") 
注意:
使用 VBA 代码一次性为工作表中所有下拉列表设置默认值
假设您的工作表中不同区域包含大量下拉列表,若要为所有下拉列表设置默认值,需反复应用公式,费时费力。本节提供了一段实用的 VBA 代码,可一键为工作表中所有下拉列表批量设置默认值。
1. 打开包含需设置默认值的下拉列表的工作表,然后按下“Alt”+“F11”组合键,启动“Microsoft Visual Basic for Applications”窗口。
2. 在“Microsoft Visual Basic for Applications”窗口中,单击“插入”>“模块”,然后将以下 VBA 代码粘贴到代码窗口中。
VBA 代码:一次性为工作表中所有下拉列表设置默认值
Sub SetDropDownListToDefaultValue()
'Updated by Extendoffice 20201026
Dim xWs As Worksheet
Dim xRg, xFRg As Range
Dim xET: xET = Null
Dim xStr As String
xStr = "- Choose from the list -"
Set xWs = Application.ActiveSheet
Set xRg = xWs.UsedRange.Cells
On Error Resume Next
For Each xFRg In xRg
xET = Null
xET = xFRg.Validation.Type
If Not IsNull(xET) Then
If xFRg.Validation.Type = 3 Then
xFRg.Value = "'" & xStr
End If
End If
Next
End Sub 
注意:在上述代码中,“- 从列表中选择 ——”是下拉列表单元格显示的默认值,您可以根据需要修改该默认值。
3. 按下“F5”键,此时将弹出宏对话框,请确保“Macro Name”(宏名称)框中已选中“DropDownListToDefault”,然后单击“Run”(运行)按钮以执行代码。

随后,指定的默认值将立即填入下拉列表单元格中。

增大下拉列表字体大小
通常,下拉列表的字体大小是固定的;若因字号过小而难以阅读,可尝试以下 VBA 方法将其放大。

1. 打开包含需放大字体大小的下拉列表的工作表,右键单击工作表标签,然后从快捷菜单中选择“查看代码”。

2. 在“Microsoft Visual Basic for Applications”窗口中,将以下 VBA 代码粘贴到代码编辑器中。
VBA 代码:放大工作表中下拉列表的字体大小
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
'updateby Extendoffice 20201027
On Error GoTo LZoom
Dim xZoom As Long
xZoom = 100
If Target.Validation.Type = xlValidateList Then xZoom = 130
LZoom:
ActiveWindow.Zoom = xZoom
End Sub 
注意:此处代码中的“xZoom = 130”表示将当前工作表中所有下拉列表的字体大小放大至 130%,您可根据实际需求自行调整。
3. 按下“Alt”+“Q”组合键,即可关闭“Microsoft Visual Basic for Applications”窗口。
此后,单击下拉单元格时,当前工作表的缩放级别将自动放大;单击下拉箭头,即可发现所有下拉项的字体也已同步放大。
从下拉列表中选择某项后,单击下拉单元格外的任意单元格,即可恢复原始缩放级别。

最佳办公效率工具
| 🤖 | KUTOOLS AI 助手:基于以下内容革新数据分析:智能执行 | 生成代码| 创建自定义公式 | 数据分析及生成图表| 调用 Kutools Functions…… |
| 热门功能:查找、高亮或标记重复项 | 删除空白行 | 合并列或单元格且不丢失数据 | 不使用公式的四舍五入…… | |
| 高级 LOOKUP:多条件 VLookup | 多值 VLookup | 跨多工作表 VLookup | 模糊查找…… | |
| 高级下拉列表:快速创建下拉列表 | 级联下拉列表 | 多选下拉列表…… | |
| 列管理器:添加指定数量的列|移动列|切换隐藏列的可见性状态|比较区域与列…… | |
| 特色功能:网格聚焦 | 设计视图 |增强编辑栏 | 工作簿和表管理器 | 资源库(自动文本)| 日期提取 | 汇总工作表 | 加密/解密单元格 | 按列表发送邮件 | 超级筛选 | 特殊筛选(筛选粗体单元格/斜体/删除线……) ...... | |
| 精选 15 工具集:12 文本工具(添加文本,删除特定字符,……)| 50+ 图表 类型(甘特图,……)| 40+ 实用公式(基于生日计算年龄,……)| 19 插入工具(插入二维码,从路径插入图片,……)| 12 转换工具(小写金额转大写,汇率转换,……)| 7 合并和拆分工具(高级合并行,分割单元格,……)|……更多 |
使用 Kutools for Excel 大幅提升您的 Excel 技能,体验前所未有的高效。Kutools for Excel 提供 300 多项高级功能,助您提升生产力、节省时间。立即点击此处,获取您最需要的功能……
Office Tab 为 Office 带来标签式界面,让您的工作更轻松
- 在 Word、Excel、PowerPoint、Publisher、Access、Visio 和 Project 中启用标签式编辑和阅读。
- 在同一个窗口的新标签页中打开并创建多个文档,而非在新窗口中。
- 将您的工作效率提升 50%,每天减少数百次鼠标点击!
所有 Kutools 插件,一个安装程序
Kutools for Office 套件捆绑了适用于 Excel、Word、Outlook 和 PowerPoint 的插件以及 Office Tab Pro,非常适合需要跨多个 Office 应用高效协作的团队。
- 一体化套件— Excel、Word、Outlook 和 PowerPoint 插件 + Office Tab Pro
- 一个安装程序,一个许可证— 几分钟内完成设置(支持 MSI)
- 协同效果更佳— 在多个 Office 应用中实现高效协同
- 30 天全功能试用— 无需注册,无需信用卡
- 超值之选— 比单独购买插件更省钱