vba - 循环没有 Do 错误但 Do 存在

标签 vba excel loops

以下代码给出了一个没有 Do Compile 错误的循环:

Loop
    Sheets("Snap").Rows(1).AutoFilter Field:=5, Criteria1:=List
    Sheets("Snap").Range("A1").CurrentRegion.Copy _
        Destination:=LastCell
    Sheets("RAW").Range("A1").End(xlDown).Offset(1, 0) = "+"
    Set List = List.Offset(1, 0)
If IsEmpty(List) Then
    Exit Do
End If
Do

但是正如你所看到的那样,Do 存在所以我不知道为什么这会给我一个错误。

最佳答案

你的 Do While ... 循环是倒退的。

do while true
    Sheets("Snap").Rows(1).AutoFilter Field:=5, Criteria1:=List
    Sheets("Snap").Range("A1").CurrentRegion.Copy _
        Destination:=LastCell
    Sheets("RAW").Range("A1").End(xlDown).Offset(1, 0) = "+"
    Set List = List.Offset(1, 0)
    If IsEmpty(List) Then
        Exit Do
    End If
Loop

交替,
do while not IsEmpty(List)
    Sheets("Snap").Rows(1).AutoFilter Field:=5, Criteria1:=List
    Sheets("Snap").Range("A1").CurrentRegion.Copy _
        Destination:=LastCell
    Sheets("RAW").Range("A1").End(xlDown).Offset(1, 0) = "+"
    Set List = List.Offset(1, 0)
Loop

关于vba - 循环没有 Do 错误但 Do 存在,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48864881/

相关文章:

excel - 如何修改 Excel 2007 的代码以使用 SaveAs

python - 在尝试插入之前在数据库中查找现有条目

bash - 剪切命令包含一个令人困惑的 head 命令的空格?

vba - 将范围中的每个单元格除以同一行上的单元格

vba - VBA 中的 SAP GUI 脚本 "Invalid use of property"错误

vba - 如何从 VBA 代码调用 Outlook 的桌面警报

arrays - 如果在列表中找到值则删除整行vba

php - Excel 到 PHP - MYSQL

Excel 宏每 n 行创建一个新工作表

c - 取数字并将其存储在C中的 vector 中