Excel下拉列表:快速选择?

5
我有一个Excel文档,从另一个xls中获取项目作为列表项以填充下拉菜单。问题是,选择太多了。我找不到快速到达所需区域的方法。(例如,打开下拉列表并按“b”键不会像大多数正常下拉列表那样跳转到B)。
这可行吗?或者用户开始在其中键入内容后,是否有一种自动完成下拉菜单的方法?

3个回答

5

虽然这是一篇旧帖子,但我想改进它,因为关于这个问题没有很多好的信息。我想要添加三个重要点:

  1. 从原始列表复制并粘贴时,请使用Paste Special > Paste link选项。这样,当您的原始列表更新时,此隐藏列表也将被更新。

  2. 有时不可能直接在上方或下方添加此列表。为了使自动完成功能正常运行,这并非必要。唯一必要的是下拉框和下面或上面连接的项目列表之间存在数据链接。例如,假设您的下拉框位于字段B5。您的列表可以从B15开始,前提是第5行和第15行之间有数据链接,可以在A、B或C列中(将其视为必须连接/连续的链条)。这些连接单元格中的数据可以是任何填充内容,甚至是空格。因此,在我们的示例中,我们只需要在单元格B6B14中添加空格,以使自动完成正常运行。这些数据单元格也可以在A5:A15C5:C15中。听起来很奇怪,但我已经进行了大量测试。请自己尝试!

  3. 我想说的最后一点是,能够输入字母并使下拉列表自动完成。当您使用数据验证下拉列表以及自动完成时,这实际上是两个不同的数据下拉列表。如果您输入单元格并按下键盘快捷键Alt + Down Arrow,则会获得在您设置的验证中使用的下拉列表。如果您首先键入字母,然后按下Alt + Down Arrow,则会获得自动完成下拉列表(当前列中的项目列表,由数据连接隐藏或未隐藏)。

    现在,这里有一点棘手和奇怪。如果您有大量的项目列表,超过1000个,在您键入第一个字母或几个字母后,Excel会进行背景搜索,从顶部到底部自动填充可能的选项。如果这是一个按字母顺序排列的名称列表,并且您键入了B,然后按下Alt + Down arrow,B名称应该很快出现。(如果没有,请在输入字母后等待一两秒钟。)Excel查找这些项目所需的秒数将随着列表的长度增加而增加,如果您要查找的名称在列表底部,则需要更长时间。因此,如果您要查找以X开头的名称,您将输入X,等待几秒钟,然后按下Alt + Down Arrow,您的列表应该显示以X开头的名称。由于列表长度和机器速度各不相同,需要进行试错。

这看起来是很多细节。但是,如果您要求人们从一个大列表中选择一个名称,并且在下拉列表中滚动超过3,000个名称不可行,上面的信息将有助于节省最终用户定位物品的时间。我制作了一个视频,概述了Excel中的自动完成功能,展示了不要打破链条方法的突出显示:https://youtu.be/PVEzHbdHf1Y

4

1
遗憾的是,在Excel 2013中似乎没有这个选项(或者我找不到它)。 - David Underhill
@DavidUnderhill 请参考 此链接 或者 此链接 来查看在新版本的 Excel 中该选项在哪里。 - RBT

0

我有一种替代方法,它使用Offset()从下拉单元格输入的文本点开始列出列表。

例如,对于一个国家列表,键入Can将以Canada开头。只需键入C即可以Cambodia开头。

请注意,为使此方法生效,需要关闭错误警报。

关键是使用以下公式作为列表源。

=OFFSET(<I>CountriesListFirstCell</I>,MATCH(<I>DropDownCell</I>&"*",<I>CountriesListcolumn</I>,0)-2,0,COUNTA(<I>CountriesListColumn</I>)-MATCH(<I>DropDownCell</I>&"*",<I>CountriesListColumn</I>,0)+1,1)

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接