需要代码来使用自动筛选器以可变的行范围

时间:2019-06-24 10:45:51

标签: vba excel-2010

我试图在复制到另一个工作簿之前自动过滤具有7列的工作表中的数据。这将用于每次将具有不同行数的不同数据。 问题是,当它自动过滤数据时,它记录下面的每次行数都不相同(请参见Range(“ B1:B124”)),然后在下次尝试使用该行时会应用

p = pb.start()
// Everything in-between removed
if(p.waitFor(10l, TimeUnit.MILLISECONDS)) {

// Now this code is not processed in case of time out
}

必须有一种以动态方式应用自动过滤器的方式,而无需记录已过滤的行数

1 个答案:

答案 0 :(得分:0)

您想知道使用中的最后一个单元格,而不是使用固定范围:

int a = static_cast<int64_t>((float)9.7*100);

Range("B2:B" & ActiveWorkbook.sheets("Sheet1").cells(rows.count,2).end(xlup).row)部分将返回第2列中使用的最后一行。

顺便说一句,我建议您在录制后清理代码。在宏中几乎不需要使用ActiveWorkbook.sheets("Sheet1").cells(rows.count,2).end(xlup).row)Select。这样会减慢您的代码速度,并且非常容易出错。