运行时错误'1004' - x1PasteValues为空

时间:2016-01-11 10:41:17

标签: excel-vba runtime-error copy-paste vba excel

我想将不断更新的实时数据粘贴到另一张纸上。实时数据链接到原始在线源,因此公式不是静态值。因此,我已将其包含在我的代码PasteSpecial:=x1PasteValues中,以便宏在该时间点复制静态值。

但是,当我尝试运行宏运行时错误“1004”弹出,x1PasteValues显示为空。

我相信PasteValues函数应该有效,因为我手动使用PasteSpecial并且它有效。

Sub copy_paste()

Worksheets("Sheet").Range("B2:B36").Copy
Worksheets("Sheet2").Range("B1").PasteSpecial Transpose:=True

With Sheets("Sheet2")

    ab = .Cells(.Rows.Count, 1).End(xlUp).Row + 1

    .Cells(1, 1).Value = "Time"
    .Cells(ab, 1).Value = Now

    Worksheets("Sheet").Range("H2:H36").Copy
    Worksheets("Sheet2").Range("B" & Rows.Count).End(xlUp).Offset(1, 0).PasteSpecial Paste:=x1PasteValues, Tranpose:=True

End With

Application.OnTime Now + TimeSerial(0, 0, 1), "copy_paste"

End Sub

1 个答案:

答案 0 :(得分:0)

试试这个。我假设您希望H的内容出现在A列的时间戳旁边的行中。

Sub copy_paste()
    Dim ab As Integer


    Worksheets("Sheet").Range("B2:B36").Copy

    With Sheets("Sheet2")
        .Range("B1").PasteSpecial Transpose:=True

        ab = .Cells(.Rows.Count, 1).End(xlUp).Row + 1

        .Cells(1, 1).Value = "Time"
        .Cells(ab, 1).Value = Now


        Worksheets("Sheet").Range("H2:H36").Copy
        .Range("B" & ab).PasteSpecial Paste:=xlPasteValues, Transpose:=True

    End With


    Application.OnTime Now + TimeSerial(0, 0, 1), "copy_paste"

End Sub