vba控件常规使用
UserForm 基础
如何显示 UserForm
以下是用于显示 UserForm 编程语法是:
UserFormName .Show
要显示名为 UserForm1, UserForm 使用以下代码:
UserForm1.Show
不显示它实际上还能加载 UserForm 装入内存。 复杂 UserForm 可能需要几秒钟以显示。 因为预先您能加载到内存, UserForm 可决定何时导致此开销。 要加载到内存 UserForm1 不显示它, 使用以下代码:
Load UserForm1
若要显示 UserForm, 必须使用以前已显示 显示 方法。
如何以暂时隐藏 UserForm
如果要暂时隐藏 UserForm, 使用 隐藏 方法。 可能想要隐藏 UserForm 如果应用程序涉及用户窗体之间移动。 要隐藏 UserForm, 使用以下代码:
UserForm1.Hide
 
如何从内存删除 UserForm
要从内存, 删除 UserForm 使用 Unload 语句。 要卸载, 名为 UserForm1, UserForm 使用以下代码:
Unload UserForm1
如果您卸载 UserForm 是与 UserForm 或者, 是与 UserForm 上控件的事件过程中 (例
, 您单击 CommandButton 控件), 您可以使用 " " 关键字代替的 UserForm 名称。 将关键字用于卸载 UserForm, " Me " 使用以下代码:
Unload Me
如何使用 UserForm 事件
支持许多预定义事件, 可以附加到 VBA 过程。 在事件发生时, 该附加到事件过程运行。 单个操作由用户执行可初始化多事件。 之间最经常对 UserForm 使用事件是 Initialize 事件、 Click 事件, Terminate 事件。 

注意 包含事件过程 Visual Basic 模块可能称为 " 后面 " UserForm 模块。 模块包含事件过程是不可见的 VisualBasic 编辑器 Project MicrosoftInternetExplorer 窗口 Modules 集合中。 您必须双击正文部分 UserForm 以查看 UserForm 代码模块。
如何捕获 UserForm 事件
要捕获 UserForm 事件, 请按照下列步骤操作:
1.
Excel 中创建新工作簿。
2.
工具 菜单, 指向 , 然后单击 VisualBasic 编辑器
3.
插入 菜单上, 单击要在工作簿中插入 UserForm UserForm
4.
双击以显示代码窗口对于 UserForm UserForm
5.
模块, 中键入如下代码:
Private Sub UserForm_Click()
            Me.Height = Int(Rnd * 500)
            Me.Width = Int(Rnd * 750)
            End Sub
            Private Sub UserForm_Initialize()
            Me.Caption = "Events Events Events!"
            Me.BackColor = RGB(10, 25, 100)
            End Sub
            Private Sub UserForm_Resize()
            msg = "Width: " & Me.Width & Chr(10) & "Height: " & Me.Height
            MsgBox prompt:=msg, Title:="Resize Event"
            End Sub
            Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
            msg = "Now Unloading " & Me.Caption
            MsgBox prompt:=msg, Title:="QueryClose Event"
            End Sub
            Private Sub UserForm_Terminate()
            msg = "Now Unloading " & Me.Caption
            MsgBox prompt:=msg, Title:="Terminate Event"
            End Sub
6.
运行 菜单上, 单击 运行子过程 / 用户窗体
UserForm 首先加载, 时宏使用 Initialize 事件改为 " 事件事件事件 ! " BackColor 属性以深蓝的 UserForm Caption 属性。 

当您单击 UserForm, 您初始化 Click 事件。 调整 UserForm Click 事件。 因为您创建 Resize 事件, 过程单击 UserForm 后收到两个消息框。 因为 Click 事件代码更改宽度属性和 Height 属性是 UserForm Resize 事件发生两次。 

关闭 UserForm 初始化 QueryClose 事件。 QueryClose 事件显示消息框包含标题为 Initialize 事件, 您赋予 UserForm 代码中。 可以使用时要执行特定的操作集如果用户关闭 UserForm QueryClose 事件。 

然后生成一个消息框, 指出标题为 UserForm UserForm1 Terminate 事件。 控件的使用从内存中删除 UserForm 并返回到其原始状态标题为 UserForm Terminate 事件发生。
如何防止 UserForm 关闭通过关闭按钮
当您运行 UserForm, 关闭 按钮添加到 UserForm 窗口的右上角。 如果要防止 UserForm 关闭通过 关闭 按钮, 您必须捕获 QueryClose 事件。 

QueryClose 事件 UserForm 是从内存中卸载之前发生。 使用 QueryClose 事件 CloseMode CloseMode 参数来确定如何 UserForm 关闭。 vbFormControlMenu 值为 CloseMode CloseMode 参数表示时, 单击 关闭 按钮。要保持活动, UserForm Cancel 取消 QueryClose 事件参数为 True 要使用 QueryClose 事件来防止 UserForm 关闭通过 关闭 按钮, 请按照下列步骤:
1.
Excel 中创建新工作簿。
2.
工具 菜单, 指向 , 然后单击 VisualBasic 编辑器
3.
插入 菜单上, 单击要在工作簿中插入 UserForm UserForm
4.
CommandButton 控件添加到 UserForm
5.
双击以显示代码窗口对于 UserForm UserForm
6.
在代码窗口, 键入如下代码:
Private Sub CommandButton1_Click()
            Unload Me
            End Sub
            Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
            IF CloseMode = vbFormControlMenu Then
            Cancel = True
            Me.Caption = "Click the CommandButton to close Me!"
            End If
            End Sub
7.
运行 菜单上, 单击 运行子过程 / 用户窗体
当您单击 关闭 按钮 UserForm 未关闭。 您必须单击 CommandButton 控件关闭 UserForm 
 


注意  代码包含在本文中不包含影响所有属性和对控件事件的示例。 如果您不得不, 请使用属性窗口要查看可供控件属性的列表。 要在 视图 菜单上, 查看列表的属性, 请单击 属性窗口 
如何使用设计模式来编辑控件
当您使用 " VisualBasic 编辑器来设计一个对话框, 使用设计模式。 在设计模式, 您可编辑控件和可更改属性在属性窗口 UserForm 上的控制。 若要显示属性窗口, 视图 菜单上, 单击 属性窗口  

当您处在设计模式 注意 控件不响应与事件。 当您运行一个对话框, 显示方式, 用户看到它, 程序处于运行模式。 UserForm 是从内存中卸载将不会保留更改, 对运行模式中控件的属性。 

注意 控件请回复到事件在运行模式。
如何引用 UserForm 上控件
如何您引用控件编程取决 VisualBasic 模块表运行代码的类型。 如果代码从常规模块, 运行以下语法是:
UserFormName.Controlname.Property 
例如, 如果要设置名为 TextBox 名为到值是 Bob , UserForm1 UserForm TextBox 控件的 Text 属性使用以下代码:
UserForm1.TextBox1.Text = "Bob"
如果代码是通过事件的控件或者通过 UserForm, 启动过程中是您不需要引用名为 UserForm , 使用以下代码:
TextBox1.Text = "Bob"
当向对象, 附加代码代码附加到之一为对象事件。 众多, 本文示例中, 将代码附加到 Click 事件是 CommandButton 对象。
 
标签控件
标签 控件主要用于描述 UserForm 上其他控件。 运行 UserForm  Label 控件不能编辑由用户。 使用 Caption 属性到设置或返回一个 Label 控件中文本。 用于格式化 Label 控件其他常用属性包括 字体 属性和 ForeColor 属性。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。