【发布时间】:2015-01-17 00:47:52
【问题描述】:
我想通过将复杂性封装到函数和过程中来创建多个数据透视表(我确实已经设法使用 VBA 创建数据透视表,但每个数据透视都有一个模块,这意味着大量重复的代码......)
我设法创建过程和函数来创建数据透视、添加过滤器和行字段。但是在添加数据字段时,我得到一个无效的过程调用;然而奇怪的是,只有当我使用变量传递信息时我才会收到该错误:查看产生错误的行,第一行工作得非常好,而我无法让第二行运行(变量包含正确的值) :
pivotName.addDataField pivotName.PivotFields("sdID"), "SD ID number", xlCount 'works fine
pivotName.addDataField pivotName.PivotFields(fieldName), fieldDescription, calcMethod 'produces Invalid procedure call error
由于我的想法不多了,我们将不胜感激!
非常感谢,
亚历山大
【问题讨论】:
-
能否尝试分别输入这3个变量,以确定是否只有其中一个导致了问题?也许其中一个是错误的数据类型。
-
您将变量声明为什么?猜测它会是
calcMethod变量,我认为应该声明为XLConsolidationFunction -
谢谢 Dan,总的来说,这是一个很好的建议,我自己已经太累了,无法想到...
-
@Gareth:非常感谢,其实是这个问题!我将
calcMethod声明为字符串,这显然导致了问题!
标签: vba runtime-error excel-2010 pivot-table