Vba 确定集合中用户表单的索引

Vba 确定集合中用户表单的索引,vba,userform,Vba,Userform,我正在开发一个VBA“应用程序”,我最初并没有编写它。该应用程序使用了两个不同的用户表单。原始编码器通过引用各个userforms在userforms()集合中的位置来引用它们。ExUserForms(MainFormID)其中Integer MainFormID是0 然而,我最近做了一个更改,添加了另一个UserForm。但是,(我认为)这改变了其他一些表单的索引值,因此像UserForms(MainFormID)、SomeControl、SomeMethod等行都会抛出错误。更奇怪的是,这似

我正在开发一个VBA“应用程序”,我最初并没有编写它。该应用程序使用了两个不同的用户表单。原始编码器通过引用各个userforms在userforms()集合中的位置来引用它们。Ex
UserForms(MainFormID)
其中
Integer MainFormID
0

然而,我最近做了一个更改,添加了另一个UserForm。但是,(我认为)这改变了其他一些表单的索引值,因此像
UserForms(MainFormID)、SomeControl、SomeMethod等行都会抛出错误。更奇怪的是,这似乎只发生在我运行一次应用程序之后;它第一次运行得非常好

我不想硬编码
MainFormID=0
LinkFormID=1
,而是希望程序根据表单的键(名称)确定表单的索引


是否有类似于
LinkFormID=UserForms(“LinkForm”).index

索引由容器中的项目顺序决定,由容器决定,而不是由项目决定。我知道,但是有没有办法找出容器放置项目的顺序?迭代容器并找出答案?索引由容器中项目的顺序决定,由容器决定,而不是由项目决定。我知道,但有没有办法找出容器放置项目的顺序?迭代容器并找出答案?