[英]Copy last row and paste into specified range
我正在嘗試從范圍B7:O34
復制最后輸入的數據並將其粘貼到范圍A7:O7
。
當我運行此宏時,我希望它覆蓋A7:O7
的數據,而不是繼續在連續的行中列出數據。
這是我嘗試過的:
Sub CopyLastRow()
Dim lRw As Long
With ActiveSheet
lRw = Cells.Find("", .Range("A" & Rows.Count), , , xlByRows, xlPrevious).Row
.Rows(lRw).Copy
End With
With Sheets("Sheet1")
lRw = Cells.Find("", .Range("A" & Rows.Count), , , xlByRows, xlPrevious).Row
.Rows(lRw + 1).PasteSpecial Paste:=xlPasteValues
End With
End Sub
Option Explicit
Sub CopyLastRow()
Dim lR As Long, lC As Long, r1 As Range, r2 As Range
With ActiveSheet
lR = .Cells(.Rows.Count, 2).End(xlUp).Row 'last row - should be 34
lC = .Cells(7, .Columns.Count).End(xlToLeft).Column 'last col - should be "O" (15)
Set r1 = .Range(.Cells(lR, 2), .Cells(lR, lC)) 'last row of data
End With
With Sheets("Sheet1")
Set r2 = .Range(.Cells(6, 2), .Cells(6, lC)) 'row 6 on Sheet1
End With
r2.Value2 = r1.Value2
End Sub
干得好..
Sub Button1_Click()
Dim sh As Worksheet, ws As Worksheet
Dim Rws As Long, rng As Range, Prng As Range
Set sh = ActiveSheet
Set ws = Sheets("Sheet1")
Set Prng = ws.Range("B6")
With sh
Rws = .Range("B34").End(xlUp).Row
Set rng = .Range("B" & Rws & ":O" & Rws)
End With
rng.Copy Prng
End Sub
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.