5

我有一个 Excel 文档从另一个 xls 中提取项目作为列表项来填充下拉菜单。问题是,有很多选择。我找不到快速前往我想去的地方的方法。(例如,打开下拉列表并按“b”不会像大多数普通下拉菜单那样进入 B)

这可能吗?或者,一旦用户开始输入下拉菜单,是否有某种方法可以自动完成下拉菜单?

4

3 回答 3

5

尽管这是一篇旧文章,但我想对其进行改进,因为关于此的信息并不多。我想补充 3 个重点:

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

  2. 有时无法直接在上方或下方添加此列表。对于自动完成功能,这不是必需的。唯一需要的是data link下拉框和下方或上方项目的链接列表之间有一个。例如,假设您的下拉框在 field 上B5。您的列表可以从 开始B15,前提是在 A、B 或 C 列中的第 5 行和第 15 行之间存在数据链接(将其视为必须连接/连续的链。)。Data可以是这些连接单元格中填充的任何内容,甚至是空格。因此,在我们的示例中,我们只需要在单元格中添加空格,B6以便B14自动完成功能正常运行。这些数据单元格也可以在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 中的自动完成功能,突出显示了该Don't Break The Chain方法: https ://youtu.be/PVEzHbdHf1Y

于 2014-03-10T09:27:48.120 回答
4

转到工具>选项 - 编辑并选中为单元格启用自动完成

值将您的项目列表移动到紧接在上方的范围内

验证单元。隐藏验证单元格上方的行。

取自这里:

http://www.ozgrid.com/Excel/autocomplete-validation.htm

于 2012-09-07T17:00:15.127 回答
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)
于 2018-04-26T02:49:28.203 回答