Excel 如果一行包含基于数字范围的特定值,则将该行从一张图纸复制到另一张图纸
如果某行包含某个值,我想复制并粘贴该行。但是,我需要获得100.000中的大约2500个值(复制并粘贴到单独的行中)。因此,是否有可能创建一个VBA,允许我创建一个循环或某种排序,在那里我可以指定这些值 例如代替Excel 如果一行包含基于数字范围的特定值,则将该行从一张图纸复制到另一张图纸,excel,vba,range,copy-paste,Excel,Vba,Range,Copy Paste,如果某行包含某个值,我想复制并粘贴该行。但是,我需要获得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
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新手,非常感谢您的帮助
最好的
Lisa使用选择案例:
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
不要使用范围(“A:A”)
使用较小的范围。我猜您没有使用A列中的每个单元格。