【发布时间】:2017-08-31 20:25:07
【问题描述】:
我与一个内部网站建立了数据连接,该网站抓取了一个完整的网页并将其导入“DC”表。从那里它通过使用以下代码的高级过滤器宏移动到“暂存”。 N1100 不是文本的最后一行,它是一个任意数字,距离我的数据末尾有一段距离。
Private Sub Worksheet_Change(ByVal Target As Range)
Call Password_Unprotect
Dim ws As Worksheet
Set ws = ThisWorkbook.Sheets("DC")
Dim lrng As Range
Set lrng = ThisWorkbook.Sheets("DC").Range("A158:N1100")
Dim crng As Range
Set crng = ThisWorkbook.Sheets("DC").Range("A158:N1100")
Dim copyto As Range
Set copyto = ThisWorkbook.Sheets("Staging").Range("A1:H1")
lrng.AdvancedFilter xlFilterCopy, crng, copyto, Unique:=False
'Call password_protect
End Sub
我的问题是,每当我用于数据连接的网页发生更改时,它都会破坏我的高级过滤器,因为我的标准从轮班开始。我希望使高级过滤器足够智能以找到它需要开始的行或删除它上面的每一行,然后将数据移动到“暂存”表。需要注意的是,包含“Division”的单元格在工作表上是唯一的。突出显示的行是高级过滤器的开始。
【问题讨论】:
-
OFFSET & MATCH 的组合应该可以帮助您确定起点,或者使用动态命名范围