excel将包含特定单词的行按相同顺序复制到另一个工作表中
我有一张名为“在此处粘贴可用性数据”的表格,a栏有数字,C栏和D栏有日期和时间,E栏有摘要。B栏有“确定”或“错误”两个字。我要做的是将B列中只有“ERROR”一词的所有行复制到名为“Availability”的新工作表中 数据从第3行开始,可能至少有700行数据 我需要一个宏,当数据每个月粘贴到“粘贴可用性数据此处”时,它会自动将数据复制到工作表“可用性”中 我尝试过使用IF函数,但它不想工作excel将包含特定单词的行按相同顺序复制到另一个工作表中,excel,vba,Excel,Vba,我有一张名为“在此处粘贴可用性数据”的表格,a栏有数字,C栏和D栏有日期和时间,E栏有摘要。B栏有“确定”或“错误”两个字。我要做的是将B列中只有“ERROR”一词的所有行复制到名为“Availability”的新工作表中 数据从第3行开始,可能至少有700行数据 我需要一个宏,当数据每个月粘贴到“粘贴可用性数据此处”时,它会自动将数据复制到工作表“可用性”中 我尝试过使用IF函数,但它不想工作 Sub Test() For Each Cell In Sheets(1).Range("B:
Sub Test()
For Each Cell In Sheets(1).Range("B:B")
If Cell.Value = "ERROR" Then
matchRow = Cell.Row
Rows(matchRow & ":" & matchRow).Select
Selection.Copy
Sheets("Availability").Select
ActiveSheet.Rows(matchRow).Select
ActiveSheet.Paste
Sheets("Paste Availability Data Here").Select
End If
Next
End Sub
附上工作表的图片
非常感谢这可以解决问题,但您需要更改特定问题的索引和名称。发布另一个关于自动化的问题(尽管它已经得到了回答)
将wsh1设置为工作表
将wsh2设置为工作表
作为整数的Dim i
作为整数的Dim j
子条件_Copy()
设置wsh1=工作表(“表1”)
设置wsh2=工作表(“表2”)
i=1
j=1
当wsh1.Cells(i,2)”时执行此操作
如果wsh1.Cells(i,2)=“ERROR”,则
wsh1.Rows(i).复制wsh2.Rows(j)
j=j+1
如果结束
i=i+1
环
端接头
这可以完成任务,但您需要更改特定问题的索引和名称。发布另一个关于自动化的问题(尽管它已经得到了回答)
将wsh1设置为工作表
将wsh2设置为工作表
作为整数的Dim i
作为整数的Dim j
子条件_Copy()
设置wsh1=工作表(“表1”)
设置wsh2=工作表(“表2”)
i=1
j=1
当wsh1.Cells(i,2)”时执行此操作
如果wsh1.Cells(i,2)=“ERROR”,则
wsh1.Rows(i).复制wsh2.Rows(j)
j=j+1
如果结束
i=i+1
环
端接头
我实际上正在做类似的事情,你是想用某种按钮还是自动过程来完成这一点?我还需要它是一个自动过程我在上面贴的一个可以工作,但它在新的工作表上留下空白。我希望所有填充的行都是连续的,没有空行,其中包含OK的行were@CHaleStackOverflow不是请求代码的地方。自动化过程已经在其他问题中得到了回答。条件复制也有答案。可能的复制我实际上正在做类似的事情,你想通过某种按钮或自动过程来完成吗?我还需要它是一个自动过程我在上面贴了一个类似的工作,但它在新的工作表上留有空白。我希望所有填充的行都是连续的,没有空行,其中包含OK的行were@CHaleStackOverflow不是请求代码的地方。自动化过程已经在其他问题中得到了回答。条件复制也有答案。可能是
Dim wsh1 As Worksheet
Dim wsh2 As Worksheet
Dim i As Integer
Dim j As Integer
Sub Conditional_Copy()
Set wsh1 = Worksheets("Sheet1")
Set wsh2 = Worksheets("Sheet2")
i = 1
j = 1
Do While wsh1.Cells(i, 2) <> ""
If wsh1.Cells(i, 2) = "ERROR" Then
wsh1.Rows(i).Copy wsh2.Rows(j)
j = j + 1
End If
i = i + 1
Loop
End Sub