如何为用户窗体上的所有控件设置属性?

问题描述 投票:0回答:1

我需要从用户窗体外部的宏为用户窗体上的所有控件设置属性

.Value
ForeColor

用户表单显示为

vbModeless

下面没有

On Error Resume Next
的代码正在生成

运行时错误“438”:对象不支持此属性或方法

ctrl.Value = False
ctrl.ForeColor = vbBlack

如果我使用不推荐的

On Error Resume Next
,那么代码就可以工作。

Sub Clear_All_Filter()
    On Error Resume Next
    Dim ctrl As control
    For Each ctrl In UserForm1.Controls
        ctrl.Value = False
        ctrl.ForeColor = vbBlack
    Next
End Sub
excel vba userform
1个回答
1
投票

您的标签控件很可能不支持

value
。 检查循环内控件的类型:

Sub Clear_All_Filter()
   
    Dim ctrl As Control
      For Each ctrl In UserForm1.Controls
        If TypeName(ctrl) <> "Label" Then
            ctrl.Value = False
            ctrl.ForeColor = vbBlack
        End If
      Next
End Sub
© www.soinside.com 2019 - 2024. All rights reserved.