【问题标题】:Copy Dynamically and paste to different excel sheet动态复制并粘贴到不同的excel表
【发布时间】:2018-12-05 01:15:17
【问题描述】:

我正在尝试从已关闭的 Excel 工作表中复制另一个 Excel 工作表中的数据。下面的代码按预期工作正常。但是,我想动态复制所有填充的行和列,而不是在我的宏中硬编码这些范围。你能帮我解决这个问题吗?

Dim filename As String
filename = Application.GetOpenFilename
Dim src As Workbook
Set src = Workbooks.Open(filename, True, True)
ThisWorkbook.Activate
Worksheets(1).Range("A1:BL648").Formula = src.Worksheets(2).Range("A1:BL648").Formula

就像我提到的,上面的代码运行良好,但我对复制和粘贴范围都进行了硬编码。相反,需要将它们动态化,以便仅从 src.worksheets(2) 复制填充值并将它们粘贴到工作表(1)。

Worksheets(1).Range("A1:BL648").Formula = src.Worksheets(2).Range("A1:BL648").Formula

【问题讨论】:

    标签: excel vba


    【解决方案1】:

    试试这个。捕获工作表使用的范围地址,然后粘贴到同一区域。

    Dim filename As String
    filename = Application.GetOpenFilename
    Dim src As Workbook
    Set src = Workbooks.Open(filename, True, True)
    
    
    Dim addressText As String
    ThisWorkbook.Activate
    addressText = Worksheets(1).UsedRange.Address
    Worksheets(1).Range(addressText).Formula = src.Worksheets(2).Range(addressText).Formula
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-08-11
      • 2014-10-04
      • 2019-09-21
      • 1970-01-01
      • 2012-10-28
      相关资源
      最近更新 更多