Im(尝试)编写一些模块级代码来对表单执行操作,并传递表单上的控件
在本演示中,Im使用帧,并将帧对象作为参数传递给sub,所有这些都在同一个模块内
我在获取(正确吗?)时遇到了问题框架的父对象。如果我明确地将父对象暗显为“0”;MSForms。用户表单;,或者只是;用户表单;,我无法获取表单的caption属性。但是,当我在DIM语句中意外拼错了对象变量时,该变量的非DIM版本现在将成为变量,它可以工作!(这样吧,选项显式!)
我不确定为什么这样做有效/无效。要复制这个,请输入一个表单和一个框架。使用框架的默认命名“0”;框架1;。然后将此子项放入表单模块:
&039;-----
子测试(objFrame As Frame)  ;MsgBox objFrame.Parent。标题#039;这可以在不获取对象的情况下工作 
  ;将TMPMS窗体设置为MSForms。用户表单  ;设置tmpForm=objFrame。母公司 '如果您更改“;tmpForm“;至;tmpMSForm“;正如所宣布的那样,它不起作用
  ;MsgBox tmpForm。字幕
结束子字幕
从userform调用sub。初始化事件,将帧作为参数传递:Private Sub UserForm\u initialize()
test Frame1
End Sub
请注意,两个消息框调用都有效。但是,在;测试“;子例程,如果您更改未声明的;tmpForm“;变量(Variant)
to“;tmpMSForm“;(声明为MsForms.Userform,甚至声明为“Userform”),caption属性返回为空
为什么会这样