Ms access 在模块中将子窗体作为变量引用
我一直在使用一个模块将窗体和控件的名称作为变量来更改窗体上控件的属性。例如:Ms access 在模块中将子窗体作为变量引用,ms-access,vba,ms-access-2007,ms-access-2010,ms-access-2013,Ms Access,Vba,Ms Access 2007,Ms Access 2010,Ms Access 2013,我一直在使用一个模块将窗体和控件的名称作为变量来更改窗体上控件的属性。例如: Sub mySub(formName作为字符串,controlName作为字符串) 表单(formName).控件(controlName).ForeColor=color.RedDark 端接头 我也想对子窗体控件上的属性执行此操作,但无法完全理解将子窗体也作为变量引用的语法 我想可能是这样的: Forms(mainFormName).Form(subFormName).Controls(controlName.F
Sub mySub(formName作为字符串,controlName作为字符串)
表单(formName).控件(controlName).ForeColor=color.RedDark
端接头
我也想对子窗体控件上的属性执行此操作,但无法完全理解将子窗体也作为变量引用的语法
我想可能是这样的:
Forms(mainFormName).Form(subFormName).Controls(controlName.ForeColor=color.RedDark
…但这不起作用(对象不支持此属性或方法)。我的Access 2010无法识别名为ForeColour的控件属性;但前景色是有效的。(我不知道这里是否涉及语言环境问题,但我的语言环境是美国英语。) 除此之外,我认为您正在尝试通过
.Form(subFormName)
属性访问ForeColor。相反,请引用子窗体控件,并从中引用其包含的子窗体中的目标控件
在这个工作示例中,Form12包含一个名为Child0的子窗体控件。子窗体控件包含一个名为fsub2的窗体,该窗体又包含一个名为txtmoo_field的文本框。但请注意,子窗体的名称(窗体名称而不是包含它的控件)不会出现在此语句中:
Forms(“Form12”).Controls(“Child0”).Controls(“txtmoo_字段”).ForeColor=vbBlue
对“前景色/前景色”有很好的了解。Intellisense不会在这个级别触发,而我来自英国,因此犯了这个错误。我花了一段时间才发现。转折点是?形式!表格12!孩子0!txtMemo_field.ForeColour
给了我与您报告的相同的“不支持”错误。那时我终于注意到了ForeColor
vs.ForeColor
我现在提到这一点,因为我认为形式!FormName!子窗体控件!对于表单()
,控件()
,属性方法,text box.Property
可能是一个有用的交叉检查。是给我的。:-)