【发布时间】:2018-12-01 09:23:31
【问题描述】:
我有一个主子程序,我用它来设置我的工作表和数据,以便在其他子程序中进行分析。作为其中的一部分,我将一些导入的数据转换为表格(数据是从 CSV 文件导入的)并放入“IncidentsData”工作表中。整个模块的代码编译。但是,当我单步执行模块时,我在将导入的数据格式化为表格的行上得到“运行时错误'5':无效的过程调用或参数”:
Worksheets("IncidentsData").ListObjects.Add(xlSrcRange, ISDRange, , xlYes).Name = "IncidentsDataTable"
这是整个子程序:
Public Sub Categorise_Incidents()
Dim incidentsData1 As ListObject
Set Commodity = Worksheets("CommoditySheet").ListObjects("Table1")
Set QEListByGenus = Worksheets("QEListByGenus")
Set Results = Worksheets("Results")
Set IncidentsDataSheet = Worksheets("IncidentsData")
ISDRange = IncidentsDataSheet.UsedRange
Worksheets("IncidentsData").ListObjects.Add(xlSrcRange, ISDRange, , xlYes).Name = "IncidentsDataTable"
Set incidentsData1 = IncidentsDataSheet.ListObjects("IncidentsDataTable")
initialiseDictionaries
MainSearchLoop QEListByGenus, incidentsData1, dictQENSGenus
End Sub
我已经访问了许多网站以了解如何执行此操作,包括: 1. excel vba 中运行时错误 5 的堆栈溢出页面 - 其中大多数似乎特定于数据透视表,并没有告诉我我做错了什么 2.https://msdn.microsoft.com/en-us/vba/excel-vba/articles/listobjects-object-excel 3. VBA中创建表的堆栈溢出问题How to create a table using vba? 4.关于在excel vba中创建表格的分析选项卡 https://analysistabs.com/excel-vba/tables-examples/ 加上一堆其他人。不幸的是,他们没有帮助我找出我做错了什么。任何帮助将不胜感激。 干杯,S26
已编辑:包含 .Name 因为这也不起作用并引发运行时错误并修复拼写错误/错误。
【问题讨论】:
-
您在错误的行上添加了
.Name。 -
谢谢,我知道。即使语法现在看起来是正确的并且我已经删除了拼写错误,它仍然不起作用并引发相同的错误。 (不要在深夜编码应该是那个故事的寓意)
-
Dim ISDRange as Range然后Set ISDRange = ... -
@BigBen,谢谢!我真的很感谢你的帮助。这样就解决了。
标签: vba excel runtime-error listobject