Как поместить определенный пользователем тип данных в словарь

Я пытаюсь определить свой собственный тип данных и поместить его в словарь в качестве значения. VBA жалуется, что не принимает мой тип данных. Есть идеи, как заставить это работать?

Option Explicit

Public Type Translation
    german As String
    french As String
    italian As String
End Type

Private resource As Object

Public Sub addTranslation(key As String, g As String, f As String, i As String)
    Dim trx As Translation
    trx.german = g
    trx.french = f
    trx.italian = i

    resource.add key, trx  '<== here VBA is complaining
End Sub

Public Sub initResource()
    If resource Is Nothing Then Set resource = CreateObject("scripting.dictionary")
End Sub

Вот сообщение об ошибке:

Только пользовательские типы, определенные в публичных объектных модулях, могут быть принудительно переданы в вариант или из варианта или переданы в поздние модули.

13
задан Ilmari Karonen 14 September 2017 в 20:50
поделиться