VB热身:走进VBA&Excel高级应用
2016-04-30 20:47
525 查看
几个vb小程序
在给大家讲Excel宏之前,让我们通过几个VB小例子来了解一下VB这门语言吧:首先说明,VB编程是基于控件的,也就是你要先从左边控件窗口拖一个控件到窗口中去,然后双击控件进行编程。具体要拖那个控件来添加某一段程序,自己仔细琢磨琢磨就知道了。需要判断程序是哪一个控件的事件处理程序,这就不多说了。
1到100累加
Private Sub Command1_Click() Dim S%, I% S = 0 ' 累加前变量S为0 For I = 1 To 100 S = S + I Next I Print " S=", S End Sub
2步进循环
Private Sub Command1_Click() Dim i As Integer, n As Integer Dim sum As Integer sum = 0 For i = 1 To 99 Step 2 sum = sum + i Next i Print sum End Sub
99乘法表的打印
Private Sub Command1_Click() For i = 1 To 9 For j = 1 To 9 se = i & "×" & j & "=" & i * j Picture1.Print Tab((j - 1) * 9 + 1); se; Next j Picture1.Print Next i End Sub
do循环
Private Sub Command1_Click() Dim i As Integer Dim n As Integer n = InputBox("请输入一个整数") '11 For i = 2 To n - l '从2到10做循环 If n Mod i = 0 Then Exit For '提前结束循环 End If Next i If i < n Then '循环体结束后 i的值<11 Print n & "不是素数" Else '否则 Print n & "是素数" End If End Sub Private Sub Command2_Click() Dim i As Integer Dim sum As Integer i = 1 sum = 0 Do sum = sum + 1 i = i + 1 If i > 100 Then Exit Do Loop Print sum End Sub
计算圆的面积
Private Sub Command1_Click() '定义点击方法 Dim r As Single, v As Single '定义变量为单精度型 Const PI = 3.14 '定义常数PI r = Val(InputBox("请输入圆半径", "面积计算", 0)) '输入消息事件窗口 v = PI * r ^ 2 '计算 Label1.Caption = Label1.Caption + Str$(v) '标签显示运算结果 End Sub
简单计算示例
Private Sub Command1_Click() Dim Fl%, F2%, F3%, I% F1 = 1 F2 = 1 Print Fl; F2 For I = 3 To 15 F3 = F1 + F2 Print F3 F1 = F2 F2 = F3 Next End Sub
交换两个变量的值
Private Sub Command1_Click() Dim temp As Single, x As Single, y As Single x = Text1.Text y = Text2.Text temp = x x = y y = temp Text3.Text = x Text4.Text = y End Sub
判断打印
Private Sub Command1_Click() Dim i As Integer, j As Integer, k As Integer Dim n As Integer n = 0 Print " 1的个数", "2 的个数 ", "5的个数 " For i = 0 To 10 For j = 0 To 5 For k = 0 To 2 If i + j * 2 + k * 5 = 10 Then n = n + l Print i, j, k End If Next Next Next Print n & "种方法" End Sub
摄氏度转换为华氏度
Private Sub Command1_Click() Dim C As Single, F As Single Dim str1 As String C = Val(Text1.Text) F = 9 / 5 * C + 32 str1 = "摄氏" + Str$(C) + "度相当于华氏" + Str$(F) + "度" MsgBox str1, , "转换温度" End Sub
循环变量
Private Sub Command1_Click() Dim i%, n&, t!, e! e = 0 i = 0 n = l t = l Do While t > 0.00001 'Do While t > 0. 00001 e = e + t i = i + l n = n * i t = l / n Loop Print e End Sub
循环的实现
Private Sub Command1_Click() Dim i As Integer Dim sum As Long i = 1 sum = 0 Do While i <= 10000 sum = sum + i i = i + 1 Loop Print sum End Sub Private Sub Command2_Click() Dim i As Integer, n As Integer Dim sum As Integer n = Val(Text1.Text) sum = 0 i = 0 Do Until i > n sum = sum + i i = i + 1 Loop Text2.Text = sum End Sub
最大公约数和最小公倍数
Private Sub Command1_Click() Dim n%, m%, nm%, r% m = Val(InputBox("m=")) n = Val(InputBox("n=")) nm = n * m If m < n Then t = m m = n n = t End If r = m Mod n Do While (r <> 0) m = n n = r r = m Mod n Loop Print "最大公约数=", n Print "最小公倍数=", nm / n End Sub
经验总结
Dim ab As integer , sum As single等价于Dim ab%, sum!
数值转换为字符串方法有:
1、显示转换 使用Str()函数 2、隐式转换 例如:Text1.text=100;
Text1.text=100 等价于
Text1.text=“100“`’
For to ……Next
和C的风格还是有点不一样
作为学C出身的,写这么幼稚的VB程序,估计都会给学VB的同学笑话。本意只是想通过几个VB小程序,让没学过VB的同学对它有个了解,以便我接下来讲VBA程序编写能够更顺畅。
相关文章推荐
- 关于VB6.0的Microsoft windows common control 6.0 对象库未注册问题
- Web-Floor-Navbar 楼层导航菜单Demo
- 'VBoxManage' is not recognized as an internal or external command, operable program or batch file.
- 签名时出错: 未在路径 C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\bin\signtool.exe 找到 SignTool.exe
- vb
- vb 十进制转二进制
- 15电气李书鹏4月28日VB作业(3)
- 十进制数转换成十六进制数
- vb
- 求给定一个正整数的十六进制表示 vb
- 15电气李书鹏4月28日VB作业(2)
- vb
- vb21
- vb20
- VB
- vb中几种循环
- 2016年4月28日VB 求给定一个正整数的二进制数
- 将十进制数转换成二进制数
- 15电气郄慧敏vb作业二进制的转换
- vb