Compiler Error:

Only user-define types defined in public object models can be coerced to or from a variant or passed to late-bound functions.


The following error I get with the following circumstances...

1. I have a Form called: "frmTest"
2. I have a Class called: "clsTest"

3. I have created a <type>:

Private Type DAFormat
ctlName As String
bChanged As Boolean
End Type

4. I create an instance of the class in the form:

Dim clsRun As New clsTest

clsRun.ProcessData

5. The class method: "ProcessData"


Dim clCollection As new Collection
Dim dType As DAFormat

dType.ctlName = "ctlText"
dType.bChanged = False

*** clCollection.Add dType, dType.ctlName ***


Why do I get this compile error at this line where adding a type definition to a collection, and according to what they say in MSDN you can add objects or any data type to the collection.

My class is private, I have no Idea, can't remember as to how to change it to public, I thinkI have to create an ActiveX Control project ... Currently my project is Standard EXE. Why does biding complain since I have tried creating and adding a module called: "mdlMain", and adding the type/collection variables/types as public to this mdlMain, and trying to access that within the class: "clsTest", but nothing I have tried works.

Any suggestions/help on this topic?

Thank you in advance ...

xIRC