如何将值(而非公式)复制到新的Excel工作表中?

时间:2019-07-16 15:22:19

标签: excel vba excel-formula

我正在尝试使用MS Excel vba将一列从一张纸复制到另一张纸。我遇到的问题是,当我运行脚本时,它将脚本复制为公式而不是值。

理想情况下,这是要定期运行的脚本的一部分,这就是为什么我选择使用vba而不是公式,但是基于这两种方法的建议都值得赞赏。

根据提供的代码,我们关注的行是:

src.Range("D:D").Copy Destination:=trg.Range("B1")

代码有效,但复制公式而不是值

Sub GenerateReport1_Click()

    Dim src As Worksheet
    Dim trg As Worksheet
    Dim LastRow As Long

    Set src = ThisWorkbook.Worksheets("Report0")
    Set trg = ThisWorkbook.Worksheets("Report1")

    src.Range("A:A").Copy Destination:=trg.Range("A1")
    src.Range("D:D").Copy Destination:=trg.Range("B1")
    src.Range("B:B").Copy Destination:=trg.Range("C1")
    src.Range("H:H").Copy Destination:=trg.Range("D1")
    src.Range("J:J").Copy Destination:=trg.Range("E1")
    src.Range("G:G").Copy Destination:=trg.Range("F1")

End Sub

0 个答案:

没有答案