用VBA计算一元二次方程的代码分享(基于Access数据库)

日期: 栏目:VBA 浏览:199
用VBA计算一元二次方程的代码分享(基于Access数据库)
本文分享一下用VBA编程计算一元二次方程的完整代码(基于Access数据库),包括核心代码和调用代码的全部,以及窗体自动化的设计方案。

(全文1200字) 作者:宇哥

来源 | 公众号:宇哥玩Access(ID:datamap2000)
微信:datamap1999(学习Access数据库)

640 (2).gif

Access数据库平台是一个比较方便的编程平台,除了与Excel配合进行数据分析整理,还可以做VBA语言的开发平台。本案例的总体设计思路是用一个窗体控制数据输入和输出。自动化模式按照我的老套路,采用更改文本框自动计算的方式。

1.核心代码

本文的计算代码放在公共空间的子过程里即可。由于核心计算过程并不是需要数据变量的函数,因此无需变量,需要调用的时候直接调用过程即可。

Public Sub equation()
Dim strA As String, strB As String, strC As String '声明字符串变量
Dim A As Double, B As Double, C As Double '声明双精度浮点数变量
Dim delta As Double '声明双精度浮点数变量
    strA = Val(Nz(txtA, 1)) '获取并转换文本框txtA、txtB、txtC的值
    strB = Val(Nz(txtB, 1))
    strC = Val(Nz(txtC, 1))
    A = Val(strA): B = Val(strB): C = Val(strC) '将字符串值转换为双精度浮点数
    delta = B ^ 2 - 4 * A * C '计算二次方程的判别式
'判断判别式的值
If delta >= 0 Then '如果判别式大于等于零,计算并赋值给根X1和X2
    X1 = (-B + Sqr(delta)) / (2 * A)
    X2 = (-B - Sqr(delta)) / (2 * A)
Else '如果判别式小于零,将根的值设为"不存在实数根"
    X1 = "不存在实数根"
    X2 = "不存在实数根"
End If
    '将计算得到的根分别赋给文本框txtX1和txtX2
    Me.txtX1.Value = X1
    Me.txtX2.Value = X2
    Me.Refresh '刷新表单
End Sub

核心代码主要的思路是判断实数根是否存在,同时需要注意防止误操作。核心代码用Public Sub的形式放在主代码界面即可,不需要单独存放在模块里。

2.调用代码

本案例的自动化方案,是给一元二次方程的三个系数设置三个文本框txtA、txtB和txtC,只要更改这三个文本框就立刻触动核心代码计算。

Private Sub txtA_AfterUpdate()
Call equation
End Sub

Private Sub txtA_Change()
Call equation
End Sub

Private Sub txtB_AfterUpdate()
Call equation
End Sub

Private Sub txtB_Change()
Call equation
End Sub

Private Sub txtC_AfterUpdate()
Call equation
End Sub

Private Sub txtC_Change()
Call equation
End Sub
作者介绍:
宇哥副业是一名央企总部员工,电力工程师。
主业是一名编程培训讲师、电商从业者和电商讲师。
目前运营有3家淘宝店、6家闲鱼店、2家抖店、1家亚马逊(没生意),以及10多个自媒体平台和2个个人网站
目前来看,全网学习办公软件和编程的女同学几乎没有不认识我的,但我更希望全网搞电商的女同学也都认识我。
现在宇哥做电商做培训还是比较顺的,而且主业还上班,目前一年到手的收入加起来有100来个。本来可以躺平,但是由于个人情绪一直不稳定、精神状态时好时坏,因此挺爱吐吐槽、码码字,挺愿意分享的。
我未来的打算是回老家做跨境,一边过退休生活,一边赚点躺着赚钱的生意。另外我计划每年写100万字不糊弄事的精品文章,包括宇哥的人生经验、做技术培训的经验、做电商的经验、做自媒体的经验,都分享给大家。
写作是为了流传后世,能帮助一些人最好。帮不上就当是给自己看了。
承蒙大家厚爱,很多人爱看。
谢谢大家。


宇哥课程广告

(长按二维码进入店铺,了解Access课程目录和介绍,点击订阅直接购买并观看录播课)

Access零基础教程
299.99元
Access开发教程
799.99元
Access即学即用教程
299.99元
1零基础.jpg
2开发.png
3即学即用.png
Access进销存教程
199.99元
Access陪跑教程
1599.99元
VBA教程
299.99元

4进销存.png

5陪跑.jpg

6VBA.jpg

有详细问题请加宇哥微信:datamap1999

640.jpg


标签:

X

截屏,微信识别二维码

微信号:datamap1999

(点击微信号复制,添加好友)

  打开微信