繁体   English   中英

Excel VBA运行时错误1004

[英]Excel VBA runtime error 1004

我正在尝试编写一个宏来粘贴特殊公式,但一直得到运行时错误1004“Range类的PasteSpecial方法失败”。

此宏直接来自使用Excel提供的“记录宏”。

Sub paste_formulas()
  Selection.PasteSpecial Paste:=xlPasteFormulas, Operation:=xlNone, _
         SkipBlanks:=False, Transpose:=False
End Sub

以下是事件序列:

  1. 在CSV文件A中手动选择一系列单元格并复制(CTRL + C)。
  2. 切换到XLS文件B并选择我希望粘贴复制数据的单元格。
  3. 按宏并运行personal.xlsm!paste_formulas

那是我收到错误的时候。 为什么我在复制/粘贴特殊公式时手动工作,但在宏中失败?

注意:我需要这个以上述顺序工作,无论我复制的选定范围(会不时变化),无论我粘贴公式的位置如何(也会不时变化)。 换句话说,硬编码复制和/或粘贴的固定范围对我来说不起作用。

提前感谢任何帮助,了解我的代码无法正常工作或提供解决方法。

原因很简单,当您从CSV复制然后在工作簿中复制时,单击开发人员工具栏中的Macros ,Excel将清除剪贴板。

当您单击Developer | Macros时,Excel有清除剪贴板的习惯 Developer | Macros 为了演示这一点,请复制同一工作簿中的单元格。 你会看到蚂蚁像细胞周围的边界。 现在在同一个工作簿中,单击Developer | 宏。 像边框一样的Ant会消失:)

在此输入图像描述

设置宏的快捷键并使用它。 它会工作:)

在此输入图像描述

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM