VBA错误“无法更改数据表的一部分”

时间:2013-04-05 13:34:57

标签: excel excel-vba excel-2007 vba

我有代码创建数据透视表,然后用数据填充另一个工作簿。它会打开一个工作簿,充当数据的模板,填充,保存和关闭。它为8组不同的数据执行了8次。我之前已多次运行此代码而没有出现问题,现在它似乎开始出现错误:第二组数据上的“无法更改数据表的一部分”(第一组工作)。错误的部分是......

'Transfers Repairs Data
Range("D27").Select
ActiveCell.FormulaR1C1 = _
    "=VLOOKUP(RC[-1],'[VBA Project.xlsm]Repairs Pivot'!R5C8:R60C11,4,FALSE)"
Selection.AutoFill Destination:=Range("D27:D30"), Type:=xlFillDefault
Range("D27:D30").Select
Range("D85").Select
ActiveCell.FormulaR1C1 = _
    "=VLOOKUP(RC[-1],'[VBA Project.xlsm]Repairs Pivot'!R5C8:R60C11,4,FALSE)"

有什么想法导致这种情况吗?

1 个答案:

答案 0 :(得分:0)

不是答案,而是帮助你的改进。

'Transfers Repairs Data
Range("D27:D30").FormulaR1C1 = _
    "=VLOOKUP(RC[-1],'[VBA Project.xlsm]Repairs Pivot'!R5C8:R60C11,4,FALSE)"
Range("D85").FormulaR1C1 = _
    "=VLOOKUP(RC[-1],'[VBA Project.xlsm]Repairs Pivot'!R5C8:R60C11,4,FALSE)"

另外请确保您使用的是正确的表格,并且正如其他人所评论的那样,您没有数据表正在尝试粘贴这些公式。要使用特定工作表,您可以更改以上内容:

Sheets("Sheet1").Range("D27:D30").FormulaR1C1