所以我有一个包含16列的工作表。我想找出具有字体颜色的单元格是vbRed。让我们说Range(" A5")是找到的单元格然后我想将整行复制并粘贴到当前工作表的下一行。
当我写Macro时,我发现我的程序将继续循环我复制和粘贴的行。而且我也不确定我是否可以使用循环,复制和粘贴以及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
有无限循环......
答案 0 :(得分:0)
选择列中第一个空单元格:
Range("YOUR COLUMN" & Rows.Count).End(xlUp).Offset(1).Select
如果您的列A始终填充,您可以将宏基于它,然后粘贴您复制的整行。
答案 1 :(得分:0)
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