定义筛选数据的第一行

时间:2018-05-23 13:46:05

标签: excel vba excel-vba

我有一个已过滤的数据列表,我想将其从一个工作表复制到另一个工作表。我知道将列表从一个工作表复制到另一个工作表的代码如果我复制包括顶部的所有行,但是我想将第一个筛选的行复制到最后一个筛选的行。

我正在努力解决的代码部分是找到第一行过滤数据的代码。即第一个过滤的行可能是第1177行,我想将该行复制到结束行。

以下代码是查找最后一个过滤的行。是否有类似的方法来查找第一个过滤的行?

感谢。

lastrow = TxtFile.Range("C" & Rows.Count).End(xlUp).Row

1 个答案:

答案 0 :(得分:0)

我假设TxtFile是一个工作表对象。

Dim TxtFile as worksheet
    TxtFile = Sheets("TextFile")

这应该可以解决问题:

Columns("B").SpecialCells(xlCellTypeBlanks)(1).Select

哎呀尝试这个:

Dim rng As Range
    Set rng = TxtFile.Range("C1")

Dim firstNonEmpty As Range
    Set firstNonEmpty = rng.End(xlDown)

 firstRow = firstNonEmpty.Row