我正在为一个棘手的问题而苦苦挣扎。我正在尝试使用 VBA 在 XLS 工作表中简单地复制和粘贴一组单元格论坛。工作表 (wks1) 是从 AccessDB 创建和填充的,否则工作正常。
错误:“范围类的粘贴特殊方法失败”
wks1.Range("P5:S5").Copy
wks1.Range("P5:S10").PasteSpecial _
Paste:=xlPasteFormulas, _
Operation:=xlNone, _
SkipBlanks:=False, _
Transpose:=False
我尝试了许多变体,但一直碰到这个错误消息。
有什么建议可以让它工作吗?
最佳答案
改为这样做:
wks1.Range("P5:S5").Autofill wks1.Range("P5:S10")
或者
wks1.Range("P5:S10").formula = wks1.Range("P5:S5").Formula
对于特殊粘贴,我的经验是少即是多:
wks1.Range("P5:S5").Copy
wks1.Range("P5:S10").PasteSpecial xlPasteFormulas
但是当只需要值或公式时,为什么要包括剪贴板呢?直接分配它们更快更干净。因此,当需要超过值或公式时,我会使用复制/粘贴。
关于vba - XLS - 在 VBA 中复制和粘贴 - PasteSpecial 方法失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35485854/