Excel VBA:粘贴问题

lizard053

我尝试了多种方法来执行此粘贴操作,但是没有一种有效。我对编程非常陌生,因此我需要一些帮助来理解为什么我总是收到错误1004或5。我什至不了解这些错误的含义。

Cells(hotcell).Copy
Cells.Offset(0, 1).PasteSpecial

或...粘贴,... PasteSpecial = xlpasteall,... pastespecial粘贴:= xlpasteall,Range(Cells(“ B”&i))。paste,Range(“ B”&i).paste等如上。

我完全不知所措。程序中的其他所有内容都正常运行。我只是无法将复制的值粘贴到所需的单元格中(全部偏移一定数量的列,但在同一行中)。帮助和解释都赞赏。

编辑由于我都收到了答案,因此能够解决我的问题。我到处都找不到很好的答案。谢谢!

我使用的解决方案是最简单的解决方案之一:

rng.Offset(0, 1) = rng.Text

再次感谢海报的回答者和发表评论的人。我太难了。

空置

有很多方法可以解决此类问题,因此,我将尝试列出一些我使用的方法。

无粘贴方法

Sub CP1()
    'This basically just transfers the value without fuss.
    Dim Rng As Range
    Set Rng = Range("A1")
    Rng.Offset(0,1) = Rng.Value
End Sub

简单粘贴方法

Sub CP2()
    'This copies a cell exactly as it is.
    Dim Rng As Range
    Set Rng = Range("A1")
    Rng.Copy Rng.Offset(0,1) 'Read: Copy Rng to Rng.Offset(0,1).
    Application.CutCopyMode = False
End Sub

特殊粘贴方式

Sub CP3()
    'This copies the format only.
    Dim sRng As Range, tRng As Range
    Set sRng = Range("A1")
    Set tRng = sRng.Offset(0, 1)
    sRng.Copy
    tRng.PasteSpecial xlPasteFormats
    Application.CutCopyMode = False
End Sub

尝试从上面的三个确定,然后进行相应的修改。;)

希望这可以帮助。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章