信阳环境怎么样:Excel VBA高级编程:向窗体添加事件 - 扑奔PPT网
来源:百度文库 编辑:偶看新闻 时间:2024/04/28 15:59:33
Excel VBA高级编程:向窗体添加事件
下面的循序渐进的过程显示了如何给窗体创建自定义事件。要试用此练习,可打开一个新的“标准 EXE”工程,并按如下面步骤去做:
要将事件添加到Form1 中,请按照以下步骤执行:
- 在“工程”菜单上,选择“添加类模块”,将类模块添加到工程中。将下面的代码放置到 Class1 的“声明”部分:
Public Property Get Form1() As Form1 Set Form1 = mForm1 End Property Public Property Set Form1(ByVal NewForm1 As Form1) Set mForm1 = NewForm1 End Property
如果使用过程视图,则不能同时查看属性过程。单击代码窗口左下角的“全模块视图”按钮,转换到全模块视图。单击过程视图旁边的“过程视图”按钮,可以返回过程视图。(将鼠标在各个按钮上移动一下,看看哪个是哪个。)
- 将下面的代码添加到 Form1 的“声明”部分:
Event Gong Private mc1 As Class1
因为已经创建了 Class1,所以创建 Class1 类型的变量是可能的。这个过程要在 Form1 和 Class1 之间切换几次,因为在模块中的操作步骤,需要首先给另一个模块添加代码。
- 返回 Class1,并将下面的代码添加到“声明”部分。
Private WithEvents mForm1 As Form1
就象在“向类中添加事件”所讨论的那样,WithEvents 关键字意味着 Form1 的这个实例是与事件相关联的。注意,这一步成为可能,要到已经创建了 Gong 事件。
- 在 Class1 的“代码”窗口上的左边“对象”下拉菜单上,选择“mForm1”来为 Gong 事件得到事件过程。将下面的代码添加到该事件过程中:
Private Sub mForm1_Gong() MsgBox "Gong!" End Sub
- 返回 Form1。在“对象”下拉菜单上,选择“添加窗体”,在右边“过程”下拉菜单上,选择“加载”。将下面的代码添加到事件过程中:
Private Sub Form_Load() Set mc1 = New Class1 Set mc1.Form1 = Me End Sub
第一行创建了一个 Class1 对象,而第二行则将对 Form1 (也就是说,是 Me - 在 Form1 的“代码”窗口中,Me 指的是 Form1;而在 Class1 的“代码”窗口中,Me 指的是 Class1)的引用赋给其 Form1 属性(在第一步所创建的)。
- 将三个文本框放置到 Form1 上。在“对象”和“过程”下拉菜单上,依次为每个控件选择“Change”事件过程,并将相同代码行放置到它们中的每个里面:
Private Sub Text1_Change() RaiseEvent Gong End Sub
每次当某个文本框的内容改变时,都将引发窗体的 Gong 事件。
- 按 F5 键,运行工程。每次在其中一个文本框内键入字符时,信息框都将响铃。这是很令人恼火的,但它显示了怎样将一个事件添加到窗体中,然后从几个控件得到通知。
就象在上面的“声明和引发事件”所述,可以将参数添加到事件中。例如,可能将控件名—或者更好是用对控件的引用—传递给事件的接收者。
vba的窗体中如何添加菜单?
请问谁知道哪有《excel的vba高级编程》谢谢了!
vba添加数据(以窗体形式)怎么做???
那里下载EXCEL VBA编程的电子书籍
关于一个excel vba编程的问题
请教:一个EXCEL的VBA编程问题
向EXCEL或是VBA高手求助!
向MDI子窗体添加Datagrid控件
问一个有关excel VBA编程的问题
用VBA编程如何遍历EXCEL每一个工作表
请问EXCEL中的宏的制作必须会VBA编程
Excel VBA
Excel VBA
vba excel
如何向高级vb编程过渡
在使用vb编程时,在与Excel绑定后,在Excel中添加新信息后如何让窗体只出现相应的按钮控件或复选框控件?
EXCEL中用VBA编程,如何在打印成PDF文件的时候自动给文件命名?
如何用VBA编程实现查找EXCEL表里的中文字符的功能?
在Execl中用VBA编程时,怎样添加ADO数据控件
excel VBA小问题
EXCEL VBA 问题
excel VBA教程电子书
Excel VBA 高手进
EXCEL VBA 基础教程下载