excel - VBA 自定义集合错误 - (未设置对象变量或 block 变量)

标签 excel vba

我在 VBA 上设置了一个自定义集合,以便存储工作表中的多个对象并循环这些项目以创建 ppt 演示文稿。

不幸的是,我在创建自定义集合时遇到了障碍:我按如下方式设置它并得到一个对象变量或 block 变量错误

Sub Funds()
Dim Funds As Collection
Dim V As Fund
Set V = New Fund

V.FundID = "V1"
V.Title = "Profile_FactSheet_Title_En"
V.Fund_MER = "V1_Mer_En"
V.Fund_Yield = "V1_Yield_End"
V.Asset_Alloc = "V1_assetAlloc_En_SourceData"
V.Asset_Alloc2 = "AAV1EN"
V.Asset_Alloc3 = "FIV1EN"
V.Asset_Alloc4 = "FIMAV1EN"
V.Title_2 = "Profile_FactSheet_Title_En"
V.Trailing = "RetV1TrailingEN"
V.Calendar = "RetV1CalendarEN"

Funds.Add V, V.FundID

结束子

当我查看这个时,我认为一切都设置正确,但我仍然收到该错误。

此外,我还有一个用于集合中对象的类模块,如下所示:

Option Explicit

Public FundID As String
Public Title As String
Public Fund_MER As String
Public Fund_Yield As String
Public Asset_Alloc As String
Public Asset_Alloc2 As String
Public Asset_Alloc3 As String
Public Asset_Alloc4 As String
Public Title_2 As String
Public Trailing As String
Public Calendar As String

对此的任何帮助将不胜感激!

最佳答案

请勿为您的收藏和子项目提供相同的名称(基金)。您需要执行以下操作:

Dim Funds As Collection
Set Funds = New Collection

或者

Dim Funds As New Collection

关于excel - VBA 自定义集合错误 - (未设置对象变量或 block 变量),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53284540/

相关文章:

vba - 如何按名称而不是按索引为 VBA 的自动筛选函数指定列?

C# 加载项 Excel : ActiveSheet

sql - VBA 和 Oracle SQL : ORA-00907: Missing Right Parenthesis

excel - 在数字列表中查找下一个奇数或下一个偶数

vba - Excel VBA 从单元格中删除内容然后删除总行数

excel - 5.5K 转换为 Excel 中的实数

excel - 将单元格与 Excel 形状链接

vba - 修改用户表单以在多个工作表上工作

excel - 与区域设置之间的转换行为不一致

mysql - 导入excel文件并保存到mysql数据库中