【发布时间】:2016-05-23 15:36:19
【问题描述】:
我有两列,W和R。W是公司名称,R是公司的测试类型。它们在“列表”表中
当我在 W 列输入公司名称时,我可以选择 R 列中的列表,其中包含公司的测试类型。例如,如果我在 W3 中输入“Batman”,在单元格 R3 中,我可以选择“Batcar”、“Bat-shirt”。
公司的测试类型存储在另一个名为“蝙蝠侠”的工作表中,位于 D 列。它将根据数据库自动更新。当我在数据库中添加新的测试类型时,测试类型表的 D 列会自动刷新。
在“登录”中,在 R 列,我使用数据验证来生成列表,它指的是“=INDIRECT(List!$W2322)”。在名称管理器中,让“蝙蝠侠”为公司名称,名称范围为“=蝙蝠侠!$D:$D”
但在列表中,它会从底部开始,有很多空白。我希望列表从头开始,以 D 列中的最后一项结束,不再有空格。
谁能帮帮我?
【问题讨论】:
-
您需要使用
INDIRECT()包含动态命名范围的工作表名称。或者,您可以将范围设为真正的 Excel 表格,然后将范围命名为=YourTableName[ColumnTitle] -
在显示列表的单元格中,我已经写了“=INDIRECT($W$2322)”。是你的意思吗?
-
如果我把它做成excel表格,自动添加的新项目不会被视为新表格项目
-
他的意思是
=indirect('sheetname'!$W$2322) -
这个问题之前已经回答过了……见this on SO或this
标签: vba excel excel-formula formula