vba - XLS - 在 VBA 中复制和粘贴 - PasteSpecial 方法失败

标签 vba excel

我正在为一个棘手的问题而苦苦挣扎。我正在尝试使用 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/

相关文章:

sql - vba sql从工作表和外部文件查询数据

vba - 保护 Excel 工作簿(使用 VBA)免于与不同数据重复使用

Excel——显示从今天起 X 个月的日期

excel - 在 Excel 中的两个日期之间的每行中生成日期

c# - 如何使用 C# Windows 窗体读取 Excel 中的多个单元格

excel - Visual Basic Excel : Copying text as text

vba - 从 vba 到平面文件的 Unicode 字符串

excel - 优化宏: table clear content

vba - If * Then * 和条件是什么意思

excel - 将英尺-英寸转换为英寸 Excel