VBA代码在数据透视表旁边的列中向下拖动公式

Posted

技术标签:

【中文标题】VBA代码在数据透视表旁边的列中向下拖动公式【英文标题】:VBA code dragging down a formula in a column next to a pivot table 【发布时间】:2017-05-22 14:58:58 【问题描述】:

在更新范围 A:D 中的数据透视表后尝试自动“向下拖动”列 E 中的公式后,我收到“1004”:应用程序定义或对象定义错误。更新后数据透视表的长度可能不同(有时更长,有时更短),这就是我需要动态 E 列的原因。

我使用的代码:

Dim LastRow As Long
LastRow = Range("A" & Rows.Count).End(xlUp).Row
Range("E5").Formula = "=VLOOKUP(A5;Table1[[ID_Number]:[Notes]];37;1)"
Range("E5").AutoFill Destination:=Range("E5:E" & LastRow)

【问题讨论】:

【参考方案1】:

你的线路

Range("E5").Formula = "=VLOOKUP(A5;Table1[[ID_Number]:[Notes]];37;1)"

需要

Range("E5").Formula = "=VLOOKUP(A5,Table1[[ID_Number]:[Notes]],37,1)"

公式(除非使用FormulaLocal 属性)需要用英文书写。

【讨论】:

以上是关于VBA代码在数据透视表旁边的列中向下拖动公式的主要内容,如果未能解决你的问题,请参考以下文章

通过引用多个工作表的VBA编写SUMIF的问题

使用 VBA 代码从数据列创建数据透视的问题

VBA替换索引匹配公式

VBA:根据先前定义的变量过滤数据透视表

将数据解析/反透视到熊猫数据框中的列中

vba代码中的数组公式与应对公式