在当前行下复制find的结果
所以我有一个16列的工作表。 我想找出字体颜色的单元格是vbRed。 比方说,范围(“A5”)是find的单元格,然后我想复制并粘贴整个行到当前工作表的下一行。
在我写macros时,我发现我的程序将在我复制和粘贴的行上循环。 而且我也不确定我是否可以使用循环,复制和粘贴find方法。 如果有人能帮到这个,我会很感激。
用我现在的代码:
Sub CopyRow() Dim Row As Long Row = ActiveSheet.Range("A1", ActiveSheet.Range("A1").End(xlDown)).Rows.Count Sheets("Sheet1").Activate Dim rng As Range Set rng = Range("A1:A" & Row) For Each cel In rng If cel.Font.Color = vbRed Then cel.Rows.EntireRow.Insert Shift:=xlDown cel.EntireRow.Copy cel.Offset(-1).EntireRow cel.Offset(1, 0).Select End If Next cel End Sub
有无限循环….
要select列中的第一个单元格为空:
Range("YOUR COLUMN" & Rows.Count).End(xlUp).Offset(1).Select
如果您的列A总是被填满,您可以将macros基于它,然后粘贴您复制的整个行。
Dim SrchRngA as range Set SrchRngA = Range("a16:a500") For Each cel In SrchRngA If InStr(1, cel.Value, "AB") > 0 Then 'search for "AB" cel.offset(1,0).value = cel.value 'replace next row with current cell value end if next cel