Vba Excel建议类似于键入=公式时的功能

Vba Excel建议类似于键入=公式时的功能,vba,excel,Vba,Excel,当用户在excel单元格中写入时,我有一个要填充的值列表 我一直在尝试复制excel功能 当我们在excel中键入=公式时,它会显示一个下拉列表,列表会随着更多字符的u型键入而更改。我想使用这样的功能 到目前为止,我已经尝试过不同的方法: 数据验证:这里的问题是,我可以让下拉菜单获取子字符串,但我必须单击箭头才能查看值。这使得数据输入变得单调乏味 我尝试使用组合框:问题是我有A列到H列,每个列都有不同的列表,用户可以输入n行 我尝试将列表中的值放在行中并隐藏它们:问题是它没有显示下拉列表。它只在

当用户在excel单元格中写入时,我有一个要填充的值列表

我一直在尝试复制excel功能

当我们在excel中键入=公式时,它会显示一个下拉列表,列表会随着更多字符的u型键入而更改。我想使用这样的功能


到目前为止,我已经尝试过不同的方法:

  • 数据验证:这里的问题是,我可以让下拉菜单获取子字符串,但我必须单击箭头才能查看值。这使得数据输入变得单调乏味

  • 我尝试使用组合框:问题是我有A列到H列,每个列都有不同的列表,用户可以输入n行

  • 我尝试将列表中的值放在行中并隐藏它们:问题是它没有显示下拉列表。它只在您键入之前显示精确的值。因此它不起作用

  • 我尝试使用列表框:这里的问题是,当单元格处于编辑模式时,我不确定如何获取单元格值,以便可以使用包含该单元格字符串的列表中的字符串填充列表框


  • 非常感谢您的帮助。

    您所追求的通常被称为“自动完成”或“提前键入”。您已经列出了Excel提供的现成工具


    另一种可能是在列的顶部输入所有所需的值,然后隐藏这些行

    感谢brettdj的参与

    我终于设法解决了这个问题。 当任何单元格处于编辑模式时,无法运行宏。因此,无法获取正在键入的值。除非有人试图使用API。但是,使用API是非常棘手的,我们无法预测会出现什么问题

    解决方案:


    我所做的是,当在一个特定的单元格上时,我会在该单元格上放置一个文本框,并将活动单元格中的值粘贴到后面。此外,我还将使用instr函数使用文本框中的值填充列表框中的值。

    是。但我在列表中有3000多个值,用户可以从该字符串中搜索任何内容。他可能会键入“america”,列表会显示包含“america”的所有值,无论是在开头、中间还是结尾。再次,发布您尝试过的日期。目前为止,你还没有提出一个值得回答的问题。到目前为止,我尝试过不同的方法:数据验证、组合框、将值放在上面的行中并隐藏它们、列表框。我在这些问题中遇到的问题在问题本身中已经提到。如果您正在寻找代码(给定VBA标记),那么我们希望看到您尝试了什么。如果您正在寻找非VBA解决方案,您应该向SuperUser而不是StackOverflow询问此问题。