VBA中类的解读及应用第十二讲:限制复选选择(上)

2024-05-08 19:36

本文主要是介绍VBA中类的解读及应用第十二讲:限制复选选择(上),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

《VBA中类的解读及应用》教程【10165646】是我推出的第五套教程,目前已经是第一版修订了。这套教程定位于最高级,是学完初级,中级后的教程。

类,是非常抽象的,更具研究的价值。随着我们学习、应用VBA的深入,有必要理解这些抽象的理论知识。对象,类,过程,方法,属性,事件,接口,接口如何实现等等。掌握了这些理论,不仅对于VBA这种寄生语言的实质有所深入的理解,也对自然界的很多事物将同样有所感悟。目前,这套教程程序文件已经通过32位,64位两种office系统测试。

这套教程共两册,八十四讲,今后一段时间会给大家陆续推出修订后的教程内容。今日的内容是:VBA中类的解读及应用第十二讲:限制复选选择(上)5a0e4d410f106b5ec51f8d0457bf8bbd.jpeg

【分享成果,随喜正能量】沉默,可以让混乱的心,变得清澈。沉默,是城府,是睿智,是内涵;沉默,是最后的清高,也是最后的自由。。

第十二讲 限制复选选择(上)

类是VBA的魂,如果理解了类,那么很多VBA的理论会很容易理解。所以我们要理解类,在理解的基础上掌握它的应用。

  • 今日课题需求:在做选择题时

1) 对于单选这种类型,一共多个答案,如果选择了一个那么其他的将不被选择。

2) 对于多选题,可以选择三个答案,如果选中了三个,那么其他的将不被选择。

需求分析:

这类需求是很普通的,在一个窗体上有若干个答案,我们要通过类来实现我们的需求,这里将涉及到类的命名,类对象的关联,类事件的命名与响应。

下面的几个单元我们讲解这个需求的实现:

1 类模块的搭建

我们先建立一个类模块(mydati)【注释:汉语拼音,答题】,并在类模块中实现事件对象的声明,事件的过程。

类模块代码:

Public WithEvents xuanzhe As MSForms.OptionButton

Public WithEvents yemian As MSForms.UserForm

Private Sub xuanzhe_Click() '类的数据改变事件

Dim index As Long

yy = xuanzhe.Name

index = Mid(xuanzhe.Name, 13) '取出OptionButtonN中的数字N

If yemian.Controls("OptionButton" & index).Value = True Then

Sheets("12.13.14").Cells(1, 1) = yemian.Controls("Label" & index + 1).Caption

For i = 1 To 5

If i <> index Then

yemian.Controls("OptionButton" & i).Enabled = False

End If

Next

End If

End Sub

我们看看类模块的代码截图:

11e6ddc9e3ed6bca0559d2309389d0d1.jpeg

0310e50ebf004b2d9a173fe44d125690.jpeg

【待续】

71668e793f2dc7ea96ac90f4403b2d8a.jpeg

今日内容回向:

1 类模块中需要建立的内容是什么?

2 WithEvents是声明什么的?

(待续)

2fbd802234985c15c5edebadc8c87178.jpeg

今日内容回向:

1 如何理解正则函数?

2 在窗体的构建构成中,执行了哪些动作?

本讲内容参考程序文件:VBA-CLASS(1-28).xlsm


我20多年的VBA实践经验,全部浓缩在下面的各个教程中:



这篇关于VBA中类的解读及应用第十二讲:限制复选选择(上)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!


原文地址:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.chinasem.cn/article/971240

相关文章

Nacos注册中心和配置中心的底层原理全面解读

《Nacos注册中心和配置中心的底层原理全面解读》:本文主要介绍Nacos注册中心和配置中心的底层原理的全面解读,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录临时实例和永久实例为什么 Nacos 要将服务实例分为临时实例和永久实例?1.x 版本和2.x版本的区别

Python使用Tkinter打造一个完整的桌面应用

《Python使用Tkinter打造一个完整的桌面应用》在Python生态中,Tkinter就像一把瑞士军刀,它没有花哨的特效,却能快速搭建出实用的图形界面,作为Python自带的标准库,无需安装即可... 目录一、界面搭建:像搭积木一样组合控件二、菜单系统:给应用装上“控制中枢”三、事件驱动:让界面“活”

C++类和对象之默认成员函数的使用解读

《C++类和对象之默认成员函数的使用解读》:本文主要介绍C++类和对象之默认成员函数的使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、默认成员函数有哪些二、各默认成员函数详解默认构造函数析构函数拷贝构造函数拷贝赋值运算符三、默认成员函数的注意事项总结一

如何确定哪些软件是Mac系统自带的? Mac系统内置应用查看技巧

《如何确定哪些软件是Mac系统自带的?Mac系统内置应用查看技巧》如何确定哪些软件是Mac系统自带的?mac系统中有很多自带的应用,想要看看哪些是系统自带,该怎么查看呢?下面我们就来看看Mac系统内... 在MAC电脑上,可以使用以下方法来确定哪些软件是系统自带的:1.应用程序文件夹打开应用程序文件夹

MySQL的ALTER TABLE命令的使用解读

《MySQL的ALTERTABLE命令的使用解读》:本文主要介绍MySQL的ALTERTABLE命令的使用,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1、查看所建表的编China编程码格式2、修改表的编码格式3、修改列队数据类型4、添加列5、修改列的位置5.1、把列

Linux CPU飙升排查五步法解读

《LinuxCPU飙升排查五步法解读》:本文主要介绍LinuxCPU飙升排查五步法,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录排查思路-五步法1. top命令定位应用进程pid2.php top-Hp[pid]定位应用进程对应的线程tid3. printf"%

Python Flask 库及应用场景

《PythonFlask库及应用场景》Flask是Python生态中​轻量级且高度灵活的Web开发框架,基于WerkzeugWSGI工具库和Jinja2模板引擎构建,下面给大家介绍PythonFl... 目录一、Flask 库简介二、核心组件与架构三、常用函数与核心操作 ​1. 基础应用搭建​2. 路由与参

Spring Boot中的YML配置列表及应用小结

《SpringBoot中的YML配置列表及应用小结》在SpringBoot中使用YAML进行列表的配置不仅简洁明了,还能提高代码的可读性和可维护性,:本文主要介绍SpringBoot中的YML配... 目录YAML列表的基础语法在Spring Boot中的应用从YAML读取列表列表中的复杂对象其他注意事项总

解读@ConfigurationProperties和@value的区别

《解读@ConfigurationProperties和@value的区别》:本文主要介绍@ConfigurationProperties和@value的区别及说明,具有很好的参考价值,希望对大家... 目录1. 功能对比2. 使用场景对比@ConfigurationProperties@Value3. 核

电脑系统Hosts文件原理和应用分享

《电脑系统Hosts文件原理和应用分享》Hosts是一个没有扩展名的系统文件,当用户在浏览器中输入一个需要登录的网址时,系统会首先自动从Hosts文件中寻找对应的IP地址,一旦找到,系统会立即打开对应... Hosts是一个没有扩展名的系统文件,可以用记事本等工具打开,其作用就是将一些常用的网址域名与其对应