繁体   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