【发布时间】:2021-10-04 23:37:13
【问题描述】:
我使用 excel 2016,需要从列表对象中获取值。有几列。例如三个,我需要在column1中获取值,其中column2=smth,column3=smth。我怎样才能快速做到这一点?
【问题讨论】:
-
我不是 100% 确定我理解这个问题。你的意思是这样吗?
ActiveWorkbook.Worksheets("Sheet1").ListObjects.Item(1).Value其中 1 是对象。 msdn.microsoft.com/en-us/vba/excel-vba/articles/… -
@HackSlash 不,我不想找到 ListObject。我想做类似 sql
select where查询,在特定 ListObject 的值中包含多个条件 -
多快才够快?你有没有尝试过,但速度太慢了?
-
@Tim Williams 我尝试过使用电源查询、匹配/索引和数据透视表。我有一个相当大的表要查找,并且(在我的版本中)这些方法工作缓慢,或者在我在 vba 变量中有值之前需要对工作表进行许多操作
-
匹配应该很快 - 替代方案可能取决于表的大小以及您需要进行多少次查找。