excel - 带过滤器的数据验证
问题描述
我知道如何创建一个组合框来模拟基于范围列表的数据验证单元格,具有根据您输入的内容过滤下拉列表的能力。这在功能上类似于 Excel 表中的列过滤有效,如果我开始输入“tor”,它将立即过滤预览窗口中仅包含字符串“tor”的项目。
但是,我正在尝试创建一个报告,其中每一行都需要相同的下拉菜单,理想情况下,我希望做的是让每一行都有这个单元格,您可以在其中单击下拉菜单,开始输入,然后列表将缩小。但是,我意识到组合框是一个独特的对象,它不能像复制和插入带有数据验证字段的行那样简单地复制。
有没有一种方法可以轻松复制这种下拉列表,其中列表预览根据输入到单元格中的内容(通过 vba 或纯数据验证)进行过滤?简而言之,是否可以像下面的代码一样轻松复制和粘贴具有过滤预览功能的下拉菜单,就像一行中的简单数据验证单元格一样?
这里是我的组合框代码供参考,在表 DVTest 上列出范围 A2:A791:
Sub ComboBox1_Populate(Optional fltr As String)
ComboBox1.List =
Filter(Application.Transpose(Worksheets("DVTest").Range("A2:A791" &
SymbolCount).Value), fltr)
End Sub
Private Sub ComboBox1_KeyUp(ByVal KeyCode As MSForms.ReturnInteger, ByVal
Shift As Integer)
Call ComboBox1_Populate(ComboBox1.Text)
End Sub
Private Sub UserForm_Initialize()
Call ComboBox1_Populate
End Sub
谢谢!
解决方案
推荐阅读
- python - 将元组从函数“导出”到全局变量
- typescript - 从组件获取数据
- azure - 端点 webhook url 上的事件网格订阅的 ARM 部署失败
- hdf5 - 如何将 HDF5 数据集作为 Snakemake 输入/输出?
- ios - 我希望打印的值太长,无法打印 firebase 中的所有值
- excel - 如何从工作表中读取值并检查它们是否存在于 .txt 文件中
- project-reactor - Reactor 项目中的 Fuseable 接口有什么用?
- javascript - 如何在 React 中调用注入到 ReactNative 的 WebView 中的 JavaScript 代码?
- c# - 如何使用 Angular 7 保持 AngularCLIServer 在 asp.net 核心上的构建之间运行
- c# - 使用 DataContractJsonSerializer 反序列化 json 时没有得到结果