Ошибка пользовательской коллекции VBA - (переменная объекта или переменная блока не установлены) - PullRequest
0 голосов
/ 13 ноября 2018

Я настроил пользовательскую коллекцию на VBA, чтобы сохранить несколько объектов из рабочего листа и перебрать элементы, чтобы создать презентацию PPT.

К сожалению, я столкнулся с трудностью при создании пользовательской коллекции: я настроил ее следующим образом и получил переменную объекта или с ошибкой переменной блока

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

End Sub

Когда я смотрю на это, я думаю, что все настроено правильно, но я все еще получаю эту ошибку.

Кроме того, у меня есть модуль класса для объектов в коллекции:

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

Любая помощь по этому вопросу будет принята с благодарностью!

1 Ответ

0 голосов
/ 13 ноября 2018

Не называйте свою коллекцию и одноименное имя (фонды). И вам либо нужно сделать:

Dim Funds As Collection
Set Funds = New Collection

OR

Dim Funds As New Collection
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...