我正在尝试组合一些VBA代码,该代码将根据旁边的单元格的值对单元格应用数据验证(创建要使用的列表)。我已经在Google Spreadsheet中使用了此功能,我刚刚对其进行了链接,但是我对VB一无所知,因此我为此感到困惑。
电子表格的布局有些奇怪,因为需要进行此验证的工作表的行标题从第2行开始。
正在发生的事情的基础是:
请查看linked spreadsheet,以了解此功能的实际作用。我正在尝试在Excel中尽可能地做到这一点。
编辑:主要问题是:如何在Microsoft Excel中创建动态数据验证?
答案 0 :(得分:0)
不幸的是,我没有时间完全按照我的意愿来工作。
我现在的解决方案是为每列创建表,这些表的数据应与相应的“属性组”相对应。
插入>表格
重命名表以匹配相应的“属性组”值,删除空格和特殊字符
删除重复项以删除大多数空白单元格,然后根据需要调整表格大小以消除其他空白单元格
然后,由于我的“属性组”值包含空格和特殊字符,因此我在单元格E3中使用= indirect()和replace()进行了数据验证。
数据>数据验证
在“设置”下,我在“允许”部分中使用了“列表”
来源是= INDIRECT(SUBSTITUTE(SUBSTITUTE($ D3,“”,“”),“&”,“ And”))
然后我复制单元格E3并一直向下粘贴。 这种方法解决了我当前的问题,但无法实现我希望实现的灵活性。
答案 1 :(得分:-1)
(编辑添加项-投下赞成票) 在评论中回答,但也添加了一个答案以从未回答的问题列表中消除此问题...... (编辑结束)
因此从未回答的问题中将其删除.....对属性组中的单元格范围使用命名范围(例如“ MyDataRng”),然后在列表类型数据验证中输入= MyDataRng