日期:2023-05-14
来源:玫瑰财经网
浏览:次
【分享成果,随喜正能量】别人的事,与我无关。这是人际关系中最基本的边界。混淆边界的人,要么是蠢,要么是坏,要么是又蠢又坏。我自己的事,也与他人无关。我自己做决定,自己负责任,不需要他人恩准,不需要他人评判,也不把责任推卸给他人。一个成年人,在不违法、不妨碍他人的前提下,尽量去做自己喜欢的事。他人无权置喙。己所不欲,勿施于人;己所欲,也勿施于人。天下太平。。
《VBA之Excel应用》是非常经典的,是我推出的第七套教程,定位于初级。这套教程从简单的录制宏开始讲解,一直到窗体的搭建,内容丰富,实例众多。大家可以非常容易的掌握相关的知识,这套教程共三册,十七章,都是我们在利用EXCEL工作过程中需要掌握的知识点,希望大家能掌握利用。今日讲解的内容是“VBA之EXCEL应用”的第十七章 “用户窗体(Userform)的实例应用”:VBA货币换算计算器代码
在上节中,我们完成了窗体的搭建,这讲我们讲解窗体的代码及代码的执行效果。
我们看下面的代码:
1)命令按钮的点击事件
Private Sub CommandButton1_Click()
Dim rates(0 To 2, 0 To 2) As Double, i As Integer, j As Integer
k = 3
rates(0, 0) = ThisWorkbook.Sheets("Sheet3").Cells(k, 3): k = k + 1
rates(0, 1) = ThisWorkbook.Sheets("Sheet3").Cells(k, 3): k = k + 1
rates(0, 2) = ThisWorkbook.Sheets("Sheet3").Cells(k, 3): k = k + 1
rates(1, 0) = ThisWorkbook.Sheets("Sheet3").Cells(k, 3): k = k + 1
rates(1, 1) = ThisWorkbook.Sheets("Sheet3").Cells(k, 3): k = k + 1
rates(1, 2) = ThisWorkbook.Sheets("Sheet3").Cells(k, 3): k = k + 1
rates(2, 0) = ThisWorkbook.Sheets("Sheet3").Cells(k, 3): k = k + 1
rates(2, 1) = ThisWorkbook.Sheets("Sheet3").Cells(k, 3): k = k + 1
rates(2, 2) = ThisWorkbook.Sheets("Sheet3").Cells(k, 3): k = k + 1
For i = 0 To 2
For j = 0 To 2
If ListBox1.ListIndex = i And ListBox2.ListIndex = j Then TextBox2.Value = TextBox1.Value * rates(i, j)
Next j
Next
End Sub
2)窗体的加载事件
Private Sub UserForm_Initialize()
With ListBox1
.AddItem "美元"
.AddItem "人名币"
.AddItem "日元"
End With
With ListBox2
.AddItem "美元"
.AddItem "人名币"
.AddItem "日元"
End With
ListBox1.ListIndex = 1
ListBox2.ListIndex = 0
TextBox1.Value = 1
TextBox2.Value = ThisWorkbook.Sheets("Sheet3").Cells(6, 3)
End Sub
代码的部分截图:
1) k = 3
rates(0, 0) = ThisWorkbook.Sheets("Sheet3").Cells(k, 3): k = k + 1
rates(0, 1) = ThisWorkbook.Sheets("Sheet3").Cells(k, 3): k = k + 1
rates(0, 2) = ThisWorkbook.Sheets("Sheet3").Cells(k, 3): k = k + 1
rates(1, 0) = ThisWorkbook.Sheets("Sheet3").Cells(k, 3): k = k + 1
rates(1, 1) = ThisWorkbook.Sheets("Sheet3").Cells(k, 3): k = k + 1
rates(1, 2) = ThisWorkbook.Sheets("Sheet3").Cells(k, 3): k = k + 1
rates(2, 0) = ThisWorkbook.Sheets("Sheet3").Cells(k, 3): k = k + 1
rates(2, 1) = ThisWorkbook.Sheets("Sheet3").Cells(k, 3): k = k + 1
rates(2, 2) = ThisWorkbook.Sheets("Sheet3").Cells(k, 3): k = k + 1
以上代码将窗体的汇率基准值添加到数组中。
2)For i = 0 To 2
For j = 0 To 2
If ListBox1.ListIndex = i And ListBox2.ListIndex = j Then TextBox2.Value = TextBox1.Value * rates(i, j)
Next j
Next
上述代码计算货币的转换,并将转换后的值写入textbox2文本框中。
3) With ListBox1
.AddItem "美元"
.AddItem "人名币"
.AddItem "日元"
End With
With ListBox2
.AddItem "美元"
.AddItem "人名币"
.AddItem "日元"
End With
以上代码在列表框1和2中加载三个项,供用户选择。
下面我们看代码的运行效果,我们点击“汇率换算”按钮,这个按钮要关联上useform3窗体的显示:
Sub mynzB()
UserForm3.Show
End Sub
2)点击后会出现汇率转换的窗口:
3)我们在第一个文本框中录入数值,并在两个文本框中分别选择转换前和装换后的币种:
4)点击转换:
以上就实现了美元和日元间的转换。
今日内容回向:
1) 上述代码过程是否清楚呢
2) 上述代码中有一个漏洞,就是最好在币种选择时实现第二个文本框清零,代码该如何实现呢
本讲内容参考程序文件:工作簿17.xlsm
【分享成果,随喜正能量】你是对的,我也没错。这个世界上原本存在完全相反的正确。我们走在不同的道路上,却沐浴着一样的朝阳,一样的风。两厢情愿的事,谈不上有多不道德。对两厢情愿的事横加批判、干涉,才不道德。
500吨汽车吊作业性能表(汽车吊支腿反力及抗倾覆验算)
石碣镇汽车站(今天,石碣汽车客运站恢复运营)
招贤汽车站(9月14日起,莒县K601路增开大站快车)
北京福田汽车图片(自重不到两吨,详解福田领航S1小卡)
东风轻型汽车(“东风轻型车”横空出世 未来无人驾驶车将快递送到家门口)
周口市汽车东站(郑阜高速铁路上的主要客运站——周口东站)
Copyright (c) 2022 玫瑰财经网 版权所有
备案号:冀ICP备17019481号
玫瑰财经网发布此信息的目的在于传播更多信息,与本站立场无关。玫瑰财经网不保证该信息(包含但不限于文字、视频、音频、数据及图表)全部或者部分内容的准确性、真实性、完整性、有效性、及时性、原创性等。
相关信息并未经过本网站证实,不对您构成任何投资建议,据此操作,风险自担。