无法使用VBA粘贴到合并的单元格中

我正在写一个macros将数据复制到模板窗体,将窗体保存在不同的名称,然后使用相同的空白窗体复制。 一些数据被复制到合并的单元格中。 奇怪的是,我目前使用的代码可用于第一,第二和第三次迭代,但不是第四次迭代。

我已经尝试了所有我能想到的东西,但仍然无法正常工作。 它给了我错误信息“我们不能这样做一个合并的单元格”。

这是不会粘贴到单元格中的代码。

' ' Transfers Component 1 Data ' Range("B27").Select Selection.Copy Windows("Protected_Form.xls").Activate Range("B61:D61").Select Selection.PasteSpecial Paste:=xlPasteValuesAndNumberFormats, Operation:= _ xlNone, SkipBlanks:=False, Transpose:=False 

下面是在程序中粘贴到合并单元格的代码:

 ' ' Transfers Component 1 Data ' Range("AV194").Select Selection.Copy Windows("Protected_Form.xls").Activate Range("B61:D61").Select Selection.PasteSpecial Paste:=xlPasteValuesAndNumberFormats, Operation:= _ xlNone, SkipBlanks:=False, Transpose:=False 

正如你所看到的,唯一改变的是数据被复制的单元格。

编辑:刚刚意识到,我在程序中使用相同的代码(不工作的部分)在一定的条件下。 我只是尝试在这些条件下运行它,它的工作。

现在我非常困惑。 随意问我澄清事情,我知道这是混乱。

另外:我知道。select。 很慢,我不在乎。

你有没有尝试完全限定你的范围参考? 也许在程序范围的前面(“B27”)。select是在一个表格上select范围(“B27”),select是从以后的不同表格中进行select。

另外,不要竖琴,但… …select不仅是缓慢的,它往往会导致意想不到的结果,我怀疑是你现在的问题。 我知道你在评论中说,你没有时间(奢侈)摆脱它,但现在清理代码所花费的时间将节省你吨的时间,如果你需要debugging,更改,修改,更新等等,我不会把它看作是一件苦差事,而是写好VBA代码的必要性!