该代码应该可以满足您的要求:
Sub Macro2()
Range("B2").Select
Do Until Selection.Value = "xxx"
If Selection.Value = "Name1" Then
ActiveCell.Rows("1:1").EntireRow.Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Sheet2").Select
ActiveCell.Offset(1, 0).Range("A1").Select
ActiveSheet.Paste
Else
ActiveCell.Rows("1:1").EntireRow.Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Sheet3").Select
ActiveCell.Offset(1, 0).Range("A1").Select
ActiveSheet.Paste
End If
Sheets("Sheet1").Select
ActiveCell.Offset(1, 1).Select
Loop
End Sub
假设:
1-主要数据在 sheet1 内
2-有 sheet2 和 sheet3 可用于将数据复制到
3-在最后一行数据之后添加一行,每个单元格都有 xxx 否则它是一个无限循环
4- Name1 和 Name2 在 B 列中