我需要一些代碼的修改在這裏,對VBA粘貼命令的最後一排,但事情是,將粘貼使用此代碼數據Excel VBA中粘貼數據
IM的最後一行,這項工作完美但是,當IM嘗試複製另一個數據是替換當前
Range(Range("A2:L2" & lastrow), ActiveCell.End(xlDown)).PasteSpecial
我需要一些代碼的修改在這裏,對VBA粘貼命令的最後一排,但事情是,將粘貼使用此代碼數據Excel VBA中粘貼數據
IM的最後一行,這項工作完美但是,當IM嘗試複製另一個數據是替換當前
Range(Range("A2:L2" & lastrow), ActiveCell.End(xlDown)).PasteSpecial
嘗試使用.Insert
Sub Macro2()
Rows("6:6").Copy
Rows("15:15").Insert Shift:=xlDown
End Sub
其不工作 –
你修改它來複制正確的範圍並插入正確的範圍?也許你想xlUp不xlDown? 你的問題很不清楚你想完成什麼,而「它的不工作」更加不明確...... – Jbjstam
變線
Range(Range("A2:L2" & lastrow), ActiveCell.End(xlDown)).offset(1,0).PasteSpecial
首先,你一行代碼也不是很多幫助和副本線應該有太...
然後:
Range(Range("A2:L2" & lastrow), ActiveCell.End(xlDown)).PasteSpecial
沒有必要選擇一系列單元格,如果您複製了要粘貼的範圍,則只需粘貼第一個單元格即可!
所以最重要的部分是副本!
您的代碼應該是這個樣子:
With ThisWorkBook.Sheets("SheetToCopy")
If Application.WorksheetFunction.CountA(.Cells) <> 0 Then
LastRow = .Cells.Find(What:="*", _
After:=.Range("A1"), _
Lookat:=xlPart, _
LookIn:=xlFormulas, _
SearchOrder:=xlByRows, _
SearchDirection:=xlPrevious, _
MatchCase:=False).Row
Else
LastRow = 1
End If
.Range("A2:L" & LastRow).Copy
End With
With ThisWorkBook.Sheets("SheetToPaste")
If Application.WorksheetFunction.CountA(.Cells) <> 0 Then
LastRow = .Cells.Find(What:="*", _
After:=.Range("A1"), _
Lookat:=xlPart, _
LookIn:=xlFormulas, _
SearchOrder:=xlByRows, _
SearchDirection:=xlPrevious, _
MatchCase:=False).Row
Else
LastRow = 1
End If
.Range("A" & LastRow + 1).PasteSpecial
End With
您需要觀看YouTube上的所有的貓頭鷹VBA教程。以下是有關[Excel VBA簡介第5部分 - 選擇單元格(範圍,單元格,活動單元,結束,偏移)](https://www.youtube.com/watch?v=c8reU-H1PKQ) –