仅当范围(a3:M3)为空时,我想将工作表“SL”中的范围(a3:M3)中的数据复制到工作表“EL”中的范围(a3:m3)。否则将所选数据复制到下一行(a4:m4)。
以下是我试图解决的代码..但它不起作用... plz help
Range("C9:G10").Select
Selection.Copy
Sheets("EL").Select
For n = 1 To n = 100
If Cells(n, 2).Value <> "" Then
Cells(n + 1, 2).Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
End If
Next n
答案 0 :(得分:1)
您的代码中有一些我不明白的地方:
C9:G10
? n=1 to 100
的循环? For n = 1 To n = 100
无法正常工作 - &gt;将其替换为For n = 1 To 100
。)以下是我解决问题的方法:
Sub copyRange()
' Look if destination cells are empty
Dim isempty As Boolean
isempty = True
For Each cell In Sheets("EL").Range("a3:m3").Cells
If cell.Value! = "" Then isempty = False
Next
' Copy content from SL to EL into the correct line
Sheets("SL").Range("a3:m3").Select
Selection.Copy
If isempty Then
Sheets("EL").Range("a3:m3").PasteSpecial Paste:=xlPasteValues
Else
Sheets("EL").Range("a4:m4").PasteSpecial Paste:=xlPasteValues
End If
End Sub