Excel VBA,命名参数导致“无效的过程调用或参数”错误5

问题描述:

我有一个Excel VBA脚本,它根据变量Storytable中存储的范围创建一个表(一个ListObject),然后应用列表格式。Excel VBA,命名参数导致“无效的过程调用或参数”错误5

这条线的位置参数版本工作正常:

Set Tbl = ActiveSheet.ListObjects.Add(xlSrcRange, StoryTable, , xlYes) 

我宁愿使用命名参数,但命名参数上这会导致“无效的过程调用或参数”的错误(错误代码5)行:

Set Tbl = ActiveSheet.ListObjects.Add(SourceType:=xlSrcRange, Source:=StoryTable, TableStyleName:=xlYes) 

即使这是几乎相同的规定的Excel的在线帮助中ListObjects.Add方法的例子。

一些实验表明,即使命名该行的第一个版本中的最终参数TableStyleName:=xlYes也足以触发该错误。

我在这里做错了什么?

+0

这是一个正确的签名'功能添加([SourceType中作为XlListObjectSourceType = xlSrcRange],[来源],[LinkSource],[XlListObjectHasHeaders作为XlYesNoGuess = xlGuess],[目标],[TableStyleName])作为ListObject' – cyboashu

您最初提供的第四个参数xlYes称为XlListObjectHasHeaders,而不是TableStyleNameTableStyleName是第六个参数,它不接受xlYes作为有效选项。

online help不仅在命名参数时是错误的,它也过时了,不包括TableStyleName

+0

这是非常很有帮助,谢谢!显然,我需要更加警惕在线帮助。 – Incans