VBA 循环遍历不同的工作表并将行粘贴到主工作表中(如果满足条件)
VBA Looping through different worksheets and pasting rows into master worksheet if condition is met
我想为执行以下操作的命令按钮创建 VBA 代码:
1.循环遍历除主工作表(已售出)之外的所有工作表
2. 如果满足条件则复制行(付费)
3. 将行粘贴到主工作表(已售出)
到目前为止我已经有了代码,但我的问题是它循环遍历所有工作表,包括主工作表(即重复主工作表中的信息),如果我尝试编写 If ws.name<>"Sold" 然后代码停止工作,给出消息框错误。请帮我修改代码。
Private Sub CommandButton1_Click()
Dim ws As Worksheet
For Each ws In ThisWorkbook.Worksheets
Dim i, LastRow
LastRow = ws.Range("A" & Rows.count).End(xlUp).Row
For i = 2 To LastRow
If ws.Cells(i, "M").Value = "Paid" Then
ws.Cells(i, "M").EntireRow.Copy Destination:=Sheets("Sold").Range("A" & Rows.count).End(xlUp).Offset(1)
End If
Next i
Next ws
End Sub
我不知道你把 IF 语句放在哪里,但它必须这样工作:
Dim ws As Worksheet
Dim i, LastRow
For Each ws In Worksheets
If ws.Name <> "Sold" Then
LastRow = ws.Range("A" & Rows.Count).End(xlUp).Row
For i = 2 To LastRow
If ws.Cells(i, "M").Value = "Paid" Then
ws.Cells(i, "M").EntireRow.Copy Destination:=Sheets("Sold").Range("A" & Rows.Count).End(xlUp).Offset(1)
End If
Next i
End If
Next ws
我想为执行以下操作的命令按钮创建 VBA 代码: 1.循环遍历除主工作表(已售出)之外的所有工作表 2. 如果满足条件则复制行(付费) 3. 将行粘贴到主工作表(已售出)
到目前为止我已经有了代码,但我的问题是它循环遍历所有工作表,包括主工作表(即重复主工作表中的信息),如果我尝试编写 If ws.name<>"Sold" 然后代码停止工作,给出消息框错误。请帮我修改代码。
Private Sub CommandButton1_Click()
Dim ws As Worksheet
For Each ws In ThisWorkbook.Worksheets
Dim i, LastRow
LastRow = ws.Range("A" & Rows.count).End(xlUp).Row
For i = 2 To LastRow
If ws.Cells(i, "M").Value = "Paid" Then
ws.Cells(i, "M").EntireRow.Copy Destination:=Sheets("Sold").Range("A" & Rows.count).End(xlUp).Offset(1)
End If
Next i
Next ws
End Sub
我不知道你把 IF 语句放在哪里,但它必须这样工作:
Dim ws As Worksheet
Dim i, LastRow
For Each ws In Worksheets
If ws.Name <> "Sold" Then
LastRow = ws.Range("A" & Rows.Count).End(xlUp).Row
For i = 2 To LastRow
If ws.Cells(i, "M").Value = "Paid" Then
ws.Cells(i, "M").EntireRow.Copy Destination:=Sheets("Sold").Range("A" & Rows.Count).End(xlUp).Offset(1)
End If
Next i
End If
Next ws