当您搜索“excel下拉列表多列” 在 Google 上,您可能需要实现以下目标之一:
在本教程中,我们将逐步演示如何实现这三个操作。
如下面的 GIF 图像所示,您要为各大洲创建一个主下拉列表,一个包含基于主下拉列表中所选大洲的国家/地区的辅助下拉列表,然后是第三个下拉列表包含基于在二级下拉列表中选择的国家/地区的城市的列表。 本节中的方法可以帮助您完成此任务。
1.选择要插入下拉列表的单元格(这里我选择G9:G13),转到 数据 标签,点击 数据验证 > 数据验证.
2.在 数据验证 对话框,请进行以下配置。
1. 选择包含要在二级下拉列表中显示的项目的整个范围。 前往 公式 标签,然后单击 从选择创建.
2.在 通过选择创建名称 对话框中,仅选中 第一排 框,然后单击 OK 按钮。
3. 选择要插入二级下拉列表的单元格,转到 数据 标签,点击 数据验证 > 数据验证.
4.在 数据验证 对话框,您需要:
=INDIRECT(SUBSTITUTE(G9," ","_"))
5. 选择这个下拉列表单元格,拖动它的 自动填充句柄 向下将其应用于同一列中的其他单元格。
二级下拉列表现已完成。 当您在主下拉列表中选择一个大洲时,次级下拉列表中仅显示该大洲下的国家。
1. 选择包含要在第三个下拉列表中显示的值的整个范围。 前往 公式 标签,然后单击 从选择创建.
2.在 通过选择创建名称 对话框中,仅选中 第一排 框,然后单击 OK 按钮。
3. 选择要插入第三个下拉列表的单元格,转到 数据 标签,点击 数据验证 > 数据验证.
4.在 数据验证 对话框,您需要:
=INDIRECT(SUBSTITUTE(H9," ","_"))
5. 选择这个下拉列表单元格,拖动它的 自动填充句柄 向下将其应用于同一列中的其他单元格。
第三个包含城市的下拉列表现已完成。 当您在二级下拉列表中选择一个国家时,在第三个下拉列表中只会显示该国家下的城市。
上面的方法对于我们大多数人来说比较麻烦,如果您想轻松高效地解决问题,下面的方法可以帮助您只需点击几下即可实现。
下面的 GIF 图片显示了 动态下拉列表 的特点 Kutools for Excel.
如您所见,只需单击几下即可完成整个操作。 你只需要:
上面的GIF图只是演示了制作2级下拉列表的步骤。 如果你想做一个超过2级的下拉列表, 点击这里了解更多 。 或 下载 30 天免费试用版.
下面的 VBA 脚本可以帮助在 Excel 的下拉列表中进行多项选择而不重复。 请按如下方式操作。
1.转到工作表选项卡,右键单击它并选择 查看代码 从右键单击菜单中。
2.然后 Microsoft Visual Basic应用程序 弹出窗口,需要将下面的VBA代码复制到 表(代码) 编辑。
VBA代码:允许在下拉列表中进行多项选择而不重复
Private Sub Worksheet_Change(ByVal Target As Range)
'Updated by Extendoffice 2019/11/13
Dim xRng As Range
Dim xValue1 As String
Dim xValue2 As String
If Target.Count > 1 Then Exit Sub
On Error Resume Next
Set xRng = Cells.SpecialCells(xlCellTypeAllValidation)
If xRng Is Nothing Then Exit Sub
Application.EnableEvents = False
If Not Application.Intersect(Target, xRng) Is Nothing Then
xValue2 = Target.Value
Application.Undo
xValue1 = Target.Value
Target.Value = xValue2
If xValue1 <> "" Then
If xValue2 <> "" Then
If xValue1 = xValue2 Or _
InStr(1, xValue1, ", " & xValue2) Or _
InStr(1, xValue1, xValue2 & ",") Then
Target.Value = xValue1
Else
Target.Value = xValue1 & ", " & xValue2
End If
End If
End If
End If
Application.EnableEvents = True
End Sub
粘贴代码后,按 其他 + Q 关闭键 可视化编辑器 并返回到工作表。
小贴士:此代码适用于当前工作表中的所有下拉列表。 只需单击包含下拉列表的单元格,从下拉列表中一项一项地选择项目以测试它是否有效。
备注:如果你想在一个下拉列表中允许多选,再次从下拉中选择时删除现有的项目,你也可以应用一个VBA代码来实现: 单击此处按照教程逐步操作
VBA 代码有很多限制。 如果您不熟悉 VBA 脚本,则很难修改代码以满足您的需要。 例如,更改工作范围或项目分隔符。 这里推荐一个强大的功能—— 多选下拉列表 可以帮助您轻松处理此任务。 您可以轻松地指定一个范围来执行该功能,并将分隔符更改为您喜欢的任何一个。
正如您在上面的 GIF 图像中看到的,整个操作只需点击几下即可完成。 假设您已经在工作表中插入了数据验证下拉列表,现在您只需要:
提示:设置完成后,当您点击包含下拉列表的单元格时,会出现一个包含“+“和”-“标志将显示在右侧。 只需点击“+" 号将相应的项目添加到单元格中,然后单击 "-" 符号将其从单元格中删除。
点击 此处 要了解有关此功能的更多信息,或 下载 30 天免费试用版.
如下面的屏幕截图所示,本节将向您展示如何在下拉列表中显示多个列。
默认情况下,数据验证下拉列表仅显示一列项目。 要在下拉列表中显示多个列,我们建议您使用组合框(ActiveX 控件)而不是数据验证下拉列表。
1。 去 开发商 标签,点击 插页 > 组合框(ActiveX控件).
提示: 如果 开发商 选项卡未显示在功能区中,您可以按照本教程中的步骤操作“显示开发人员标签” 来展示它。
2.然后画一个 组合框 在要显示下拉列表的单元格中。
1. 右键单击组合框然后选择 租房 从上下文菜单。
2.在 租房 对话框,请进行以下配置。
1。 在下面 开发商 选项卡,关闭 设计模式 只需点击 设计模式 图标。
2. 单击组合框的箭头,列表将展开,您可以在下拉列表中看到指定数量的列。
请注意: 正如您在上面的 GIF 图像中看到的,虽然下拉列表中显示了多个列,但单元格中仅显示了所选行中的第一项。 如果要显示其他列中的项目,请继续并应用以下公式。
小贴士:为了从其他列返回完全相同格式的数据,您需要在以下操作之前或之后更改结果单元格的格式。 在这个例子中,我改变了单元格的格式 C11 至 日期 格式化和更改单元格的格式 C14 至 货币 提前格式化。
1. 选择组合框下的一个单元格,输入下面的公式,然后按 输入 键获取同一行中第二列的值。
=IFERROR(VLOOKUP(B1,B3:F6,2,FALSE),””)
2. 要获得第三、第四和第五列的值,请一一应用以下公式。
=IFERROR(VLOOKUP(B1,B3:F6,3,FALSE),””)
=IFERROR(VLOOKUP(B1,B3:F6,4,FALSE),””)
=IFERROR(VLOOKUP(B1,B3:F6,5,FALSE),””)
笔记:
取第一个公式 =IFERROR(VLOOKUP(B1,B3:F6,2,FALSE),””) 举个例子,
在Excel下拉列表中键入时自动完成
如果您有一个包含大值的数据验证下拉列表,则需要在列表中向下滚动以查找合适的列表,或直接在列表框中键入整个单词。 如果在下拉列表中键入第一个字母时有允许自动完成的方法,一切将变得更加容易。 本教程提供了解决问题的方法。
在Excel中从另一个工作簿创建下拉列表
在工作簿中的工作表之间创建数据验证下拉列表非常容易。 但是,如果数据验证所需的列表数据位于另一个工作簿中,您将怎么办? 在本教程中,您将详细了解如何从Excel中的另一个工作簿创建拖放列表。
在Excel中创建可搜索的下拉列表
对于具有众多价值的下拉列表,找到合适的价值并非易事。 以前,我们已经介绍了一种在下拉框中输入第一个字母时自动完成下拉列表的方法。 除了自动完成功能之外,您还可以使下拉列表可搜索,以提高在下拉列表中查找适当值时的工作效率。 为了使下拉列表可搜索,请尝试本教程中的方法。
在Excel下拉列表中选择值时自动填充其他单元格
假设您已经基于单元格区域B8:B14中的值创建了一个下拉列表。 在下拉列表中选择任何值时,都希望在选定单元格中自动填充单元格范围C8:C14中的相应值。 为了解决该问题,本教程中的方法将对您有所帮助。