如果该行包含基于数字范围的特定值,则将行从一个 sheet 复制到另一个 sheet
Copy a row from one sheet to another sheet if the row contains certain values based on a range of numbers
如果某行包含特定值,我想复制并粘贴该行。然而,我有大约。我需要获取 100.000 个中的 2500 个值(复制并粘贴到单独的行中)。因此,是否有可能创建一个 VBA 允许我创建一个循环或某种类型,我可以在其中指定这些值?
例如而不是
For Each cell In Sheets(1).Range("A:A")
If cell.Value = "1" Then
matchRow = cell.Row
Rows(matchRow & ":" & matchRow).Select
Selection.Copy
Sheets("Sheet2").Select
ActiveSheet.Rows(matchRow).Select
ActiveSheet.Paste
Sheets("Sheet1").Select
End If
我需要:
For Each cell In Sheets(1).Range("A:A")
If cell.Value = "1 OR 3 OR 5 OR 10 OR 15, etc." Then
matchRow = cell.Row
Rows(matchRow & ":" & matchRow).Select
Selection.Copy
Sheets("Sheet2").Select
ActiveSheet.Rows(matchRow).Select
ActiveSheet.Paste
Sheets("Sheet1").Select
End If
我是 VBA 的新手,如有任何帮助,我们将不胜感激...
最佳,
丽莎
使用Select案例:
For Each cell In Sheets(1).Range("A:A")
Select Case cell.Value
Case "1","3","5","10","15"
matchRow = cell.Row
Sheets("Sheet1").Rows(matchRow).Copy Sheets("Sheet2").Rows(matchRow)
End Select
如果某行包含特定值,我想复制并粘贴该行。然而,我有大约。我需要获取 100.000 个中的 2500 个值(复制并粘贴到单独的行中)。因此,是否有可能创建一个 VBA 允许我创建一个循环或某种类型,我可以在其中指定这些值?
例如而不是
For Each cell In Sheets(1).Range("A:A")
If cell.Value = "1" Then
matchRow = cell.Row
Rows(matchRow & ":" & matchRow).Select
Selection.Copy
Sheets("Sheet2").Select
ActiveSheet.Rows(matchRow).Select
ActiveSheet.Paste
Sheets("Sheet1").Select
End If
我需要:
For Each cell In Sheets(1).Range("A:A")
If cell.Value = "1 OR 3 OR 5 OR 10 OR 15, etc." Then
matchRow = cell.Row
Rows(matchRow & ":" & matchRow).Select
Selection.Copy
Sheets("Sheet2").Select
ActiveSheet.Rows(matchRow).Select
ActiveSheet.Paste
Sheets("Sheet1").Select
End If
我是 VBA 的新手,如有任何帮助,我们将不胜感激...
最佳,
丽莎
使用Select案例:
For Each cell In Sheets(1).Range("A:A")
Select Case cell.Value
Case "1","3","5","10","15"
matchRow = cell.Row
Sheets("Sheet1").Rows(matchRow).Copy Sheets("Sheet2").Rows(matchRow)
End Select