我试图制作一个宏来检查列" A3"是空的"然后复制细胞" A3:K3"来自表" Outros"然后在" Docs"中插入一行。第2行后面的图表然后只将值粘贴到A3:K3"文档" ...
主要问题是只复制和粘贴值+插入行,我到达的最近的公式是
Worksheets("Outros").Range("A3:K3").Copy Destination:=Worksheets("Docs").Range("A3:K3")
但有了这个,我不仅粘贴公式而且它不会插入一行。
答案 0 :(得分:0)
要向下移动一行,请使用:
Rows(3).Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
复制/粘贴之前
要粘贴值而不是公式,请使用:
.PasteSpecial Paste:=xlPasteValues
答案 1 :(得分:0)
也许这会帮助您制作自己的代码:
Sub test()
Dim rng_one As Range
Dim rng_two As Range
Set rng_one = Worksheets("Outros").Range("A3:K3")
Set rng_two = Worksheets("Docs").Range("A3:K3")
' check if range is empty
If Application.WorksheetFunction.CountA(rng_two) = 0 Then
' insert row above row 3
Worksheets("Docs").Rows("3:3").Insert Shift:=xlDown
' copy paste as values
rng_one.Copy
rng_two.PasteSpecial xlPasteValues
Excel.Application.CutCopyMode = False
End If
End Sub