用EXECEL的VBE编写小学混合加减法自动习题集

虽然不用VBE也能够只用EXECEL表格做出加减法自动习题。但是有一个弊端,只要在表格任意单元格上按了回车键,或者退格键,整个表格都会刷新,因此根本不适合在电脑上答题,而只能把表格打印出来手填答题。

因此,考虑用VBE编写一个。

对于小学一年级的小朋友来说,要限制在20以内的加减法运算,因此程序上要做一定的边界值判断。别的不多说了,先上图。

上图中只有I列要写算法表达式,J列则要把字体设置成白色(上图为了给大家查看方便,是设置成了黑色).其它各列都不用做任何修改。

以第3行为例,I列的算法表达式为:=IF(H3="","?",IF(H3=J3,"正确","不对")),意思很明显,就不解释了。

完成以上工作之后,打开VB控件,选择“按钮”控件。把标题改为“出题"(见上图).

然后在VBE的编程界面,输入如下代码:

Private Sub CommandButton1_Click()
Dim a1 As Integer, a2 As Integer, a3 As Integer, a4 As Integer, a5 As Integer
Dim b1 As Integer, b2 As String, b3 As Integer, b4 As String
Randomize '对随机数生成器做初始化
Range("H3:H23") = "" '先清除以前的结果.循环5次,所以这里是H3:H7
n = 20 '设定计算结果在这个值以内
For i = 1 To 20 '一次出20道题
a1 = Int(Rnd() * (n - 10)) + 1 + 9 '生成1至N的整数
 
b1 = Int(Rnd() * 2) + 1 '生成1到2的整数,对应加减乘除符号
If a1 < 10 Then b1 = 1  '+
If a1 > (n - 2) Then b1 = 2
10:
 a2 = Int(Rnd() * n) + 1 '生成1至n的整数
'下面是求值过程,如果值大于n,就返回上面第10语句行重新取数
'加法
If b1 = 1 Then b2 = "+": a2 = Int(Rnd() * (n - a1)) + 1: a3 = a1 + a2:
'减法
If b1 = 2 Then b2 = "-": If a1 > a2 Then a3 = a1 - a2
'避免计算结果为负数
If a2 > a1 Then t = a1: a1 = a2: a2 = t: a3 = a1 - a2 'A3保存中间计算结果
b3 = Int(Rnd() * 2) + 1
If a3 < 10 Then b3 = 1:
If a3 > (n - 2) Then b3 = 2:

20:
 a4 = Int(Rnd() * n) + 1 '生成1至n的整数
'下面是求值过程,如果值大于n,就返回上面第20语句行重新取数
'加法
If b3 = 1 Then b4 = "+": a4 = Int(Rnd() * (n - a3)) + 1: a5 = a3 + a4:
'减法
If b3 = 2 Then b4 = "-": a4 = Int(Rnd() * a3) + 1: a5 = a3 - a4:
'避免计算结果为负数
'显示到表格中
Cells(i + 2, 1) = i: Cells(i + 2, 2) = a1: Cells(i + 2, 3) = b2: Cells(i + 2, 4) = a2: Cells(i + 2, 5) = b4: Cells(i + 2, 6) = a4: Cells(i + 2, 7) = "=" '列出算式
'写入答案到第10列中,即J列中。
Cells(i + 2, 10) = a5
Next
End Sub

点击保存.这个小工具就做好了.

用EXECEL的VBE编写小学混合加减法自动习题集相关推荐

  1. Python基础应用-编写简易混合加减法计算题

    random 模块的使用 随机生成数字,输出简易混合加减法计算题目,如100以内的混合加减法输出到txt文件 import random #定义多个变量并赋值 exp1,exp2 = "&q ...

  2. Excel制作小学数学加减法计算题库,实现孩子每日计算训练不重样

    是不是有跟彬哥同样焦虑的家长,小孩数学计算不行,然后去百度每天搜索小学数学计算题,然后各种网站一顿下载打印,身心疲惫.突然彬哥想到为什么不能利用我们常用的Excel软件设计一套小学数学加减法计算题库呢 ...

  3. 计算机加减法教学设计,小学数学加减法教学设计

    小学数学加减法教学设计 教学内容:使学生进一步掌握加.减法的笔算法则,能比较熟练地进行加.减法的计算,提高计算能力. 教学过程 一.我们已经学习了万以内的加.减法,这节课练习加.减法的.计算. 二.计 ...

  4. L1-030 一帮一 (15分) “一帮一学习小组”是中小学中常见的学习组织方式,老师把学习成绩靠前的学生跟学习成绩靠后的学生排在一组。本题就请你编写程序帮助老师自动完成这个分配工作,即在得到全班学生

    L1-030 一帮一 (15分) "一帮一学习小组"是中小学中常见的学习组织方式,老师把学习成绩靠前的学生跟学习成绩靠后的学生排在一组.本题就请你编写程序帮助老师自动完成这个分配工 ...

  5. “一帮一学习小组”是中小学中常见的学习组织方式,老师把学习成绩靠前的学生跟学习成绩靠后的学生排在一组。本题就请你编写程序帮助老师自动完成这个分配工作,即在得到全班学生的排名后,在当前尚未分组的学生中,

    "一帮一学习小组"是中小学中常见的学习组织方式,老师把学习成绩靠前的学生跟学习成绩靠后的学生排在一组.本题就请你编写程序帮助老师自动完成这个分配工作,即在得到全班学生的排名后,在当 ...

  6. 求和计算机教案,小学信息技术《自动求和》教案

    小学信息技术<自动求和>教案 一.教学目标 1.能够使用"自动求和"功能对Excel表格的数据进行求和. 2.通过自主探究学习Excel中的求和运算,提升逻辑能力和动手 ...

  7. 求和计算机教案,面试真题gt;小学信息技术《自动求和》教学设计

    中小学教师资格证考试面试 真题备考纸: 小学信息技术<自动求和> 微博@中小学教师资格证考试 二.考题解析 [教学过程] (一)情境导入 同学们,上次测验大家考的怎么样呀.你们知道自己的成 ...

  8. 小学数学加减法测试软件,加减法速算小天才

    加减法速算小天才是一款小学数学学习软件,用游戏的方式来让孩子学习,提起孩子的学习兴趣,不在抵触数学,帮助锻炼孩子的口算,心算能力,各种小测试,实时观察学习效果,喜欢的家长们赶快来西西下载使用吧. 加减 ...

  9. 小学数学加减法测试软件,儿童数学加法运算火箭(测试版)

    儿童数字加法运算火箭是一部益智早教.启蒙幼儿学习基础算术的免费学习机,它可以更好的启发刚入门学习数数的宝宝,开拓小孩的计算思维,锻炼幼儿对数字的敏感性,让幼小的小朋友们也可以拥有超快口算.速算.心算一 ...

最新文章

  1. 在域模式中控制客户端运行和禁止软件
  2. Count Color(poj 2777)
  3. 关于Tomcat安装过程中出现的一些问题...
  4. legend3---lavarel安装debugbar工具条
  5. 为什么祖国没有农历生日? | 今日最佳
  6. 使用SDL2中SDL_CreateWindow()函数时报错跳进wincore.cpp(wntdll.pbd not load)
  7. Ubuntu下 sqlitebrowser 查看 Android Sqlite数据库
  8. 【游戏开发】免费开源游戏引擎
  9. 软件测试报告模板怎么写,这篇文章告诉你
  10. MybatisPlus实现数据库加解密
  11. 大学web基础期末大作业~仿品优购页面制作(HTML+CSS+JavaScript)
  12. 你到底是想做产品,还是想做产品经理?
  13. Python软件编程等级考试三级——20220618
  14. unity编写一个简单的小游戏
  15. 存储基础知识(二)回滚的原理
  16. MySQL备份恢复之XtraBackup
  17. 平板电脑性能测试软件,平板电脑跑分排行榜 最值得入手的都在这里
  18. 教你制作手机电子书android应用
  19. 端口被占用,如何处理
  20. kubernetes 用dockerfile 创建jenkins容器

热门文章

  1. html合并的列内容不居中显示,表格不能合并居中 excel表格不能合并单元格怎么办...
  2. 【基础教程】Python转义字符及用法
  3. 会计学(固定资产测试)
  4. 【秋招机试真题】网易笔试0919
  5. sallen-场景法设计测试用例
  6. delphi2010 开发及调试WebService 实例
  7. page_view页面访问——谷歌分析
  8. 日常刷题之金钩钓鱼(拉马车)的扑克牌游戏
  9. Windows10安装rdkit
  10. lynx更新动态域名