【发布时间】:2017-06-13 01:40:20
【问题描述】:
我有一个 Excel VBA 脚本,它从存储在变量 Storytable 中的范围创建一个表(ListObject),然后应用列表格式。
这一行的位置参数版本工作正常:
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 也足以触发错误。
我在这里做错了什么?
【问题讨论】:
-
这是正确的签名
Function Add([SourceType As XlListObjectSourceType = xlSrcRange], [Source], [LinkSource], [XlListObjectHasHeaders As XlYesNoGuess = xlGuess], [Destination], [TableStyleName]) As ListObject