簡體   English   中英

VBA復制/粘貼值從上次使用的行的工作表1到工作表2?

[英]VBA copy/paste value from sheet 1 to sheet 2 on last used row?

我正在嘗試將我的值從工作表1的單元格B21復制並粘貼到B列工作表2,那里有下一個可用行?

Sub Modify_Trend()


Dim N As Long
   N = Sheets(2).Cells(Sheets(2).Rows.Count, "A").End(xlUp).Row + 1
   Cells(N, "B").Value = Sheets(1).Range("B21").Value



End Sub

請有人能告訴我我要去哪里錯嗎? 這不會產生錯誤或任何錯誤,並且無法正常工作。

您需要完全限定Cells(N, "B").Value Sheets(2)的值。

另外,您正在尋找列A的最后一行(而不是列B):

N = Sheets(2).Cells(Sheets(2).Rows.Count, "A").End(xlUp).Row + 1

請嘗試以下代碼:

Sub Modify_Trend()

Dim N As Long

With Sheets(2)
    N = .Cells(.Rows.Count, "B").End(xlUp).Row + 1
    .Range("B" & N).Value = Sheets(1).Range("B21").Value
End With

End Sub

嘗試以下操作:首先獲取工作表2中B列的已填充行總數。

然后將工作表2列B的last filled row + 1last filled row + 1設置為工作表1的B21的值。

Sub Modify_Trend()

    Dim N As Long
       N = Sheet2.Cells(Rows.Count, 2).End(xlUp).Row
       Sheet2.Range("B" & N + 1).Value = Sheet1.Range("B21").Value

    End Sub

根據您的原始代碼,這是最小的答案。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM