分享

Excel之VBA常用功能应用篇:用VBA制作一个计算器

 每天学学Excel 2022-02-15

VBA编程学习,本节介绍如何制作一个简单计算器,普通四则运算加、减、乘、除。

如果是初学者,可能对于这样一个功能,实现起来还是比较困难的,当掌握了一些基本的编程方法之后,应用就相对简单了。

下图为制作完成的效果图,可实现基本运行,清除功能。

最多可运算14位数据,再多就要相应修改一下。

这不是重点,重点是通过这样一个过程来总结思维训练,为以后实现更加复杂的方程式编程做一个参考路径。

下面来看一下实现的代码

示例中除输入运算框为文本框控件外,其它均为按钮控件。

按钮事件,用运了两个类模块,一个为数字按键类,一个是运行符号按键类。

这里应用类的方式是为了简化代码,如果给每个按钮进行事件编码,可能有点麻烦,应该是十分麻烦。

数字按钮类代码:

Public WithEvents BtnC As MSForms.CommandButton

Public Sub init(Btn As MSForms.CommandButton)

Set BtnC = Btn

End Sub

Private Sub BtnC_Click()

Dim tx As Variant, i As Integer, ix As Integer

tx = VBA.CVar(VBA.Trim(BtnC.Parent.TextBox1.Value) & BtnC.Caption)

ix = VBA.Len(tx)

x = tx

For i = 1 To ix

If i = 1 And VBA.Left(x, 1) = 0 Then

x = VBA.Replace(x, 0, "", 1, 1)

End If

Next i

BtnC.Parent.TextBox1.Value = x

End Sub

其中等于号按钮事件比较重要,因为所有结果最终从这个按钮单击之后发生改变。

Private Sub CommandButton16_Click()

Select Case xStyle

Case VBA.CStr(xStyleArr(0))'加法运算

xCount = VBA.Val(Me.TextBox1.Value) + xValue1

Case xStyleArr(1)'减法

xCount = xValue1 - VBA.Val(Me.TextBox1.Value)

Case xStyleArr(2)'乘法

xCount = VBA.Format(xValue1 * VBA.Val(Me.TextBox1.Value), "0.00")

Case xStyleArr(3)'除法

If Me.TextBox1.Value = 0 Then

xCount = 0

Else

xCount = VBA.Format(xValue1 / VBA.Val(Me.TextBox1.Value), "0.00")

End If

End Select

Me.TextBox1.Value = xCount

End Sub

计算器是一个最普通的工具,对于一些财务相关的应用里面,整合这样的一个小工具也是不错的选择。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多