VBA初级知识
来源:互联网 发布:医药软件有哪些 编辑:程序博客网 时间:2024/05/17 09:31
VBA函数 =========
用Excel的时间相信你也不短了,什么是函数就不再细说了。 与其他编程语言一样,VBA含有各种内置的函数。很多的VBA函数都与Excel的工作表函数类似,或者一样。 使用VBA函数的的方式与使用工作表公式中函数的方式相同,在VBA代码中,我们可以使用很多Excel的工作表函数,例如Sum,Abs等。 例如:复制内容到剪贴板代码:
Sub myabs()
a = InputBox("请输入数值:", "提示")
labs = Abs(a)
MsgBox "你输入的值的绝对值为:" & labs
End Sub
这是一个求绝对值的过程,通过InputBox提示用户输入一个数值给变量a,再用Abs函数求出变量的绝对值,最后通过MsgBox返回结果。 InputBox同MsgBox函数一样,是很常用的函数,关于它的功能及用法,请用绝招:抹黑,按F1,
IF语句的学习
Sub test1()
If [a1] = "" Then
MsgBox "A1单元格没有输入任何内容!"
End If
End Sub
Sub test2()
If [a1] = "" Then
MsgBox "A1单元格没有输入任何内容!"
Else
MsgBox "A1单元格已经输入了内容!"
End If
End Sub
Sub test3()
If [a1] = "" Then
MsgBox "A1单元格没有输入任何内容!"
ElseIf [a1] Mod 2 = 0 Then
MsgBox "A1单元格的数能被2整除!"
ElseIf [a1] Mod 3 = 0 Then
MsgBox "A1单元格的数能被3整除!"
ElseIf [a1] Mod 5 = 0 Then
MsgBox "A1单元格的数能被5整除!"
Else
MsgBox "A1单元格的数不能被2、3、5其中之一整除!"
End If
End Sub
程序流程控制——Select Case语句
=============================
Select Case语句同IF语句一样,也是条件判断的语句。它的功能也可以用IF语句来完成。但是,当程序的条件太多,用IF语句来判断的话就存在一些不足了,比如程序是否美观?是否便于阅读?程序的执行效率等等。Select Case语句在执行的效率上,同IF语句相比,肯定是要快得多。
[Select Case语句的语法]
Select Case 测试表达式
Case 条件表达式1
语句块1
Case 条件表达式2
语句块2
Case 条件表达式3
语句块3
......
Case 条件表达式n
语句块n
Case Else
语句块Else
End Select.
当某个条件表达式与测试表达式相匹配时,则执行其后的语句块,否则执行Case Else后的语句块,然后结束Select Case块的执行。同IF语句一样,可以不要Case Else语句。
“如对A1单元格的学生成绩进行等级评定,小于等于30分的为差,30分到59分的为不及格,60分到79分的为及格,80分到89分的为良好,90到100分的为优秀。”用Select Case语句来解决就是:
Sub test()
If [a1].Value = "" Then
MsgBox "A1单元格没有输入数字。"
Exit Sub ' 退出程序
End If
Select Case [a1].Value
Case 0 To 29
MsgBox "差"
Case 30 To 59
MsgBox "不及格"
Case 60 To 79
MsgBox "及格"
Case 80 To 89
MsgBox "良好"
Case Else
MsgBox "优秀"
End Select
End Sub
程序流程控制——For—Next 循环语句
=============================
什么是循环?
这里我们指的循环是指重复地执行某项动作(语句块)。
问题:求1到1000的自然数的和。程序编为
Sub mysum()
Dim Lsum As Long, i As Long
For i = 1 To 1000
Lsum = Lsum + i
Next
MsgBox "1到1000的自然数和为:" & Lsum
End Sub
:撰写:38度:老朽
'日期:2009-7-1 上午 11:40:59
Sub 求1到10000之间偶数和()
Dim I&, J&
For I = 0 To 10000 Step 2
J = J + I
Next
MsgBox "1到10000之间偶数和为" & J
End Sub
'撰写:38度:老朽
'日期:2009-7-1 上午 11:40:59
Sub 求1到10000之间能被5整除的数之和()
Dim I&, J&
For I = 0 To 10000 Step 5
J = J + I
Next
MsgBox "1到10000之间能被5整除的数之和为" & J
End Sub
For—Each语句的句式:
For Eacn 元素变量 In 对象集合或数组名称
语句块1
[Exit For]
语句块2
next 元素变量
和上面For—next句式是一样的工作原理。
这里的“元素变量”是用来遍历集合或数中中元素的变量,它从集合或数组的第一个元素开始,直到最后一个元素,然后退出循环。
这里我们举个例子,把当前工作薄中工作表的名称写在A列,程序为:
代码:
Sub shtname()
Dim i As Integer, sht As Worksheet
i = 1
For Each sht In Worksheets
Cells(i, 1) = sht.Name
i = i + 1 '让写入名称的单元格下移一行
Next
End Sub
程序流程控制——Do While语句 求1——1000的自然数的和的问题
===========================
Do While也是循环语句,它分为两种情况,一种是把循环条件放在开头,一种是把循环条件放在结尾。
1、开头判断循环条件
语句格式:
Do Wihle 循环条件
语句块1
[Exit Do]
语句块2
Loop
首先判断循环条件,条件为真则执行Do到Loop之间的语句。
2、结尾判断循环条件
语句格式:
Do
语句块1
[Exit Do]
语句块2
Loop Wihle 循环条件
先执行一次Do到Loop之间的语句,再判断循环条件,满足条件则进行循环。
两种格式的区别:因为第二种格式是把循环体放在尾部,得先执行一遍语句再进行循环条件判断,所以,同样的条件,第二种格式的循环会比第一种多执行一次循环部份的语句。
我们用Do While语句来解决
- VBA初级知识
- VBA 初级 进阶 - 插入客户资料
- VBA一些零碎知识
- EXCEL VBA知识总结
- java初级知识
- 线程池初级知识
- Oracle的初级知识
- win8初级知识
- 网络相关知识 初级
- 知识总结(初级)
- DB2数据库初级知识
- matlab初级知识整理
- 初级DBA知识
- 电路板初级知识
- 初级DBA知识
- Excel VBA初级系列培训--课时1
- Excel VBA初级系列培训--课时2
- Excel VBA初级系列培训--课时3
- ASP.NET - 如何:自定义 ASP.NET CreateUserWizard 控件
- 真正好的编程习惯
- 三种博弈问题
- FZU 1160 Common Subsequence
- 1221 Additional Via
- VBA初级知识
- 为何项目文档如此的少
- 十页完美计划书
- Visaul C++ 6.0创建并使用DLL
- 深圳札记(一)
- 递归的方法求平均数
- Scribefire写CSDN的Blog
- frreccfvff
- JQuery获取和设置Select选项方法