我正在尝试将符合特定条件的单元格复制到新工作表中。
例如,如果工作表(1)上的单元格H15包含请求的值( 1234 ),则只将单元格A15,B15,C15,F15和包含文本字符串的单元格复制到新行在一个新的工作表上?
我希望能够扫描范围,例如M1:X155,并且对于每个找到的值( 1234 ),将上述单元格复制到新工作表。
答案 0 :(得分:1)
根据评论,我修改了代码以仅复制指定的范围,两个表格都应该存在,代码不会为您创建第二个工作表:
Sub Test()
Dim Cell As Range
With Sheets("Sheet1") 'Sheet with data to check for value
' loop column H untill last cell with value (not entire column)
For Each Cell In .Range("H1:H" & .Cells(.Rows.Count, "H").End(xlUp).Row)
pos = InStr(Cell.Value, "1234")
If pos > 0 Then
NextFreeRow = Sheets("Sheet2").Cells(Sheets("Sheet2").Rows.Count, "A").End(xlUp).Row + 1
'get the next empty row to paste data to
.Range("A" & Cell.Row & ",B" & Cell.Row & ",C" & Cell.Row & ",F" & Cell.Row & "," & Cell.Address).Copy Destination:=Sheets("Sheet2").Range("A" & NextFreeRow)
End If
Next Cell
End With
End Sub
<强>更新强>
下面的代码将在H列的每个单元格内搜索文本“1234”,如果找到则会复制您想要的范围。
scale_shape_manual(values = c("A" = 4, "B" = 6, "C" = ""))