如何用代码创建类模块,VBA编程进阶学习,千万别错过

如何用代码创建类模块,VBA编程进阶学习,千万别错过

首页枪战射击代号FVB更新时间:2024-11-24

Excel VBA编程进入深水阶段,那就对底层的一些代码构建有一定的了解。

类模块就是其重要的一环,可以利用类模块做一些十分有用的事情。

其实在VBA实际应用中,离不开类模块的运用,只有我们并不知道而已。

每一个代码之后,或许就应用到类模块,大多是系统给我们预置完成的一些模块,看上去并不能很明显地发现,但它实实在在的存在,并处理着所有的表格功能。

本节重点讲一下,如何利用代码来创建一个类模块和删除一个类模块。

然后再给新建的类模块添加代码,代码可以是你想构建的任何功能。

上图为本节示例中的部分代码。

三个按钮分别实现不同的功能,下面具体看代码进行认识,功能都进行了模块化构建,所以在使用的时候要分清楚什么地使用这些代码。

添加类模块过程:

Public Sub AddClassCode(ClassName As String, CodeString As String) '添加类模块代码 Dim Class As Object For Each Class In ThisWorkbook.VBProject.VBComponents If Class.Name = ClassName Then Class.CodeModule.AddFromString (CodeString) End If Next Class End Sub

删除类模块过程:

Public Sub DelClass(ClassName As String) '删除类模块 Dim Class As Object For Each Class In ThisWorkbook.VBProject.VBComponents If Class.Name = ClassName Then ThisWorkbook.VBProject.VBComponents.Remove Class End If Next Class End Sub

添加类模块代码过程:

Public Sub AddClassCode(ClassName As String, CodeString As String) '添加类模块代码 Dim Class As Object For Each Class In ThisWorkbook.VBProject.VBComponents If Class.Name = ClassName Then Class.CodeModule.AddFromString (CodeString) End If Next Class End Sub

调用如上代码使用下面的按钮过程:

Private Sub CommandButton1_Click() Dim ClassName As String, CodeString As String ClassName = "NewClass01" '定义类模块名称 DelClass ClassName '删除类模块 addClass ClassName '添加类模块 '定义类模块代码 CodeString = "Public s As New Worksheet" & VBA.vbCrLf CodeString = CodeString & "Private Sub opensheet(s As Worksheet)" & VBA.vbCrLf CodeString = CodeString & "Set s = ActiveSheet(2)" & VBA.vbCrLf CodeString = CodeString & "s.Select" & VBA.vbCrLf CodeString = CodeString & "End Sub" & VBA.vbCrLf AddClassCode ClassName, CodeString '添加类模块代码 End Sub

具体实现方法仔细看代码,就会慢慢明白。

下面列出重点代码:

类模块是一个比较难学习的内容,要多次进行练习,如果很难入门,也不要太着急,如果不是深入编程,进行一些很繁杂的程序处理,基本也用不着。

但是,如果学会之后,那将是一个很大的进步。

至于如何利用类模块来实现一些功能,以后有机会,慢慢做一些示例进行讲解。

欢迎关注、收藏

---END--

查看全文
大家还看了
也许喜欢
更多游戏

Copyright © 2024 妖气游戏网 www.17u1u.com All Rights Reserved