VBA:如何使用表标题进行筛选

时间:2019-01-09 14:30:09

标签: excel vba

我创建了一个名为“ MCO项目”的宏按钮,单击该按钮将过滤我的电子表格,以便仅过滤活动的MCO项目(在“产品”列H和2b和3期在“阶段门”中查找“ MCO”) R栏)。现在工作正常。但是,我遇到的问题是,是否要在H栏“ Field 8”之前或H栏“ Field 8”和R栏“ Field 18”之间(在product栏和Phase-之前,门相位)将取消宏计算。例如,如果我要在“ G”列之后添加新列,则会使宏混乱,并且项目将无法正确过滤。

目标是单击“ MCO项目”宏按钮以按Product(Header)过滤表以查找“ MCO”(当前字段为“ 8”)。并过滤Phase-Gate相位(标题)(当前字段为“ 18”)以包括“ Phase 3”和“ Phase 2b”。那么,有谁知道宏专门用于查看“产品”列的方法吗?无论是否要添加或删除列?您能提供的任何帮助/指导将不胜感激。

VBA代码

表格屏幕截图

1 个答案:

答案 0 :(得分:1)

表从A列开始时,您有很多选择。例如,您可以使用带有索引的ListColumns来返回表中“产品”字段的列号。对其他字段重复此逻辑。如果不是从A开始,则可以使用相同的原理,对开始列进行减法调整。

javap -v <class>

您还可以在HeaderRowRange上使用“查找”

table.ListColumns("Product").Index  '<== Gives your 8 for Field:=