VBA编程自动化生成口算工具分享

当初编写这款小工具,也是因为家里孩子需要,每天都要练习口算,所以干脆自己编写了一款自动化工具。前一段时间也有分享部分功能的开发,写了一个大概,本篇文章详细的整理了从设计到编码的全过程,而且附上了全部源代码。

该工具中使用到了分支语句、循环语句、select case语句,逻辑结构很清晰也不会太复杂,很适合初学者学习编程基础知识和提升编程技能。还有家有萌娃的宝爸、宝妈也可以直接拿来使用哦,再也不用担心孩子没有口算练习题了。

如果感兴趣的话,就跟着我一步步动手做起来吧!

功能设计

输入数据

用户可以根据需要输入两项内容:运算符(加、减、乘、除)和数据范围(如20以内的数)

关于运算符,为了方便用户输入选择下拉列表形式

用户界面如下:

VBA编程自动化生成口算工具分享_第1张图片

输出数据

正常情况:

1  根据用户输入真实有效的信息,点击确认按钮,会在Sheet3中自动生成60道算式,格式已经调整过,用户可以手动链接打印机,将结果一键打印到A4纸上。

2   在用户窗口,用户点击取消按钮,会提醒用户取消了操作,然后退出程序。

异常情况:

输入数据不匹配或是没有输入信息等,都会提醒用户没有输入正确信息退出程序。

数据流程

主程序

为了方便理解,这里简单画了一下数据流程图,具体如下:

VBA编程自动化生成口算工具分享_第2张图片

除法功能实现流程

为了演示需要没有实现太多,引入两个典型的除法算式:两位数除以一位数的整数除法和除数是两位数的整数除法,有兴趣的话你们可以增加其他算式的实现,如有余数的除法、除数是整十数的除法等等。

VBA编程自动化生成口算工具分享_第3张图片

减法功能实现流程

VBA编程自动化生成口算工具分享_第4张图片

加法功能实现流程

与减法类似,去掉减数大于被减数这个条件即可。

乘法功能实现流程

与加法实现相同,主要是算式拼接时,需要将加号变成乘号

代码实现

主程序代码

Private Sub main_Program()
    Dim MaxNum As String  '获取文本中输入数值
    Dim SelectedItem As String  '获取复合框选中的数值
    Dim mtype As Integer  '获取除数的相关信息
    
    UserForm1.Show '调用窗体
    If IsButton = "取消" Then
        MsgBox "你取消了本次操作,程序退出!"
        Exit Sub
    Else
        MaxNum = UserForm1.TextBox1.Text  '读取窗体中Text内输入的数字
        SelectedItem = UserForm1.ComboBox1.Text  ' 获取选中的项的值
        mtype = UserForm1.ComboBox2.ListIndex '获取用户选择,使用Index值,0就是第一个选项,1就是第二个选项
        Select Case UserForm1.ComboBox1.Text
      

你可能感兴趣的:(VBA,自动化工具,基础编程,编程技能,Excel)