




已阅读5页,还剩3页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
VB+VBA考试题型及比例:1.VBA部分占30%左右2.考试题型(选择20-25%,程序填空25-30%,程序阅读20%,编程30%)VBA模块中的宏(Sub过程)和Function函数:设计与使用例:Sub series() 求Fibonacci数列 Dim fib(1 To 30) As Long Dim i As Integer fib(1) = 1 fib(2) = 1 For i = 3 To 30 fib(i) = fib(i - 1) + fib(i - 2) Next i For i = 1 To 30 Worksheets(Sheet1).Range(A + CStr(i) = fib(i) Next iEnd Sub(教材P.216上机练习2)编制函数age,从身份证号中计算出年龄。在VBA中使用EXCEL工作表函数1.在VBA中调用工作表函数【例6-7】使用 Min 工作表函数求出单元格区域“A1:C10”中的最小值。 Dim answer As Single, myR As Range Set myR = Worksheets(Sheet1).Range(A1:C10) answer = Application.WorksheetFunction.Min(myR) MsgBox answer【例6-8】计算位于A1A100单元格区域中的、值大于等于10且小于等于20的单元格数目。 Set iRang=Worksheets(Sheet1).Range(A1:A100)With Application.WorksheetFunction result=.Countif(iRange, =10”)- .Countif (iRange, ”&20)End With2.在单元格中插入工作表函数Sub generate() 生成随机数 Worksheets(sheet1).Range(A1:C10).Formula = =Int(Rand()*90+10)End SubVBA程序设计:常用属性、方法、事件过程对象(多级):Application、 Workbooks、*Worksheets、 *Range 方法:Cells(1,1)= Application.InputBox(“输入姓名:”)清除Sheet1的全部单元格的内容Worksheets(Sheet1).Cells.ClearContents常用属性: Cells(i,j)、ActiveCell Selection、ActiveSheet、ActiveCellTarget.row、Target.columnrows.count、columns.countUsedRange、 CurrentRegion引用单元格和区域Sub ApplyColor() 遍历 Const limit = 30 Dim c As Range For Each c In Range(AA) If c.Value limit Then c.Interior.ColorIndex = 3 NextEnd SubSub Underline() 相对引用 ActiveCell.Offset(1, 3).Font.Underline = xlDoubleEnd SubSub ObjectVar() 用Range对象引用 Dim wr As RangeSet wr = Worksheets(1).Range(A1:D5)With wr .Formula = =Rand() .Font.Bold = True End WithEnd Sub在单元格区域中循环For i = 1 To 20 Set curc = Worksheets(Sheet1).Cells(i, 3) curc.Font.ColorIndex = 0 If Abs(curc.Value) 10 Then curc.Font.ColorIndex = 3Next iFor Each c In Worksheets(Sheet1).Range(A1:D10).Cells If Abs(c.Value) 10 Then c.Font.ColorIndex = 3Next如果不知道循环的区域边界For Each c In ActiveCell.CurrentRegion.Cells If Abs(c.Value) 10 Then c.Font.ColorIndex = 3Next选定和激活单元格常用方法:选中区域Select、激活单元格ActivateActiveCell.CurrentRegion.SelectSub abc() Range(A1:B1).Select Selection.Font.Bold = TrueEnd sub处理活动单元格:例7-38Sub region() Worksheets(Sheet1).Activate ActiveCell.CurrentRegion.SelectEnd Sub工作表上加控件,简单的用户窗体UserForm标签、命令按钮、文本框、列表框等常用事件(教材P.272 程序设计题)Workbook_Open() Workbook_BeforeClose() Worksheet_selectionchang()Worksheet_chang()例:Private Sub Workbook_Open( ) 写入一些只需执行一次的代码 UserForm1.Show End Sub注:对系统进行设置的代码一般不写在这里,而写入Workbook_Activate事件中。 Sub Workbook_BeforeClose(Cancel as Boolean) 本事件常用于关闭前的数据检查 If range(“B11”).value = “” Then 假设B11为合计数所在的单元格 Cancel = True MsgBox “合计数不能为空,不允许关闭!” EndifEnd SubVB 特点面向对象程序设计的思想事件触发驱动VB编程环境既可编译执行,又可解释执行VB文件类型.vbp .frm .bas .exeVB控件通用属性 Name Caption Eanbled VisibleLeft , Top , Width , Height (位置、大小)Backcolor , Forecolor , FontName , FontSize , FontBold主要属性主要方法主要事件窗体FormMe.Caption=”My Window”Print cls moveform1.show form2.hideLoad()装载/启动 Click()命令按钮commandCaption 例:Command1. Caption = “OK(&X)” Alt+x 键Click()标签框labelCaption AutoSize Alignment输出: label1.caption=str(x%) + ”kg”文本框texttext lockedMultiLine(chr(13)+chr(10) Scrollbar PasswordChar输入: x=val(text2.text) 输出 text2.text=str(123)+ ”kg” 事件: text1_Change() Sub text1_KeyPress(KeyAscii As Integer) if keyascii57 then keyascii=0 if keyascii=13 then . End if End Sub程序框架*: 变量声明、 数据初始化(赋初值)数据输入(键盘输入、随机产生、文本框输入)数据计算/处理结果输出(窗体输出、标签框显示、MsgBox ) 程序中的特殊的语句形式*计数器 i=i+1 i=0累加器 s=s+x s=0累积器 p=p*x p=1累除器 x=x/10标记器 f=1/f=0 f=true/f=false正负号变换器 t=-t t=-1/1跟踪器 p=i变量交换 t=a:a=b:b=t变量转移 x1=x2:x2=x3:x3=x1+x2终止标记 x=-1111(x=9999)l 数组的定义 option base 0|1dim x(100) as singledim x(1 to 100) as stringdim y(3,4) as integer 动态数组的概念dim a() as integern=inputbox(“n=”)redim a(n) l 数组的使用(重点复习)数组初始化、输入/输出、数组处理:求平均值、最大值、排序*(程序填空)、插入/删除(程序阅读P.1494-16)数组输出: for i=1 to 100 print a(i); if i mod 10=0 then print next I二维数据的数据输出: for i=1 to 10 for j=1 to 10 print a(i); next jprintnext I直接选择排序法 for i=1 to n-1 for j=i+1 to n if a(i)a(j) then t=a(i):a(i)=a(j):a(j)=t next jnext I选择排序法For i = 1 To n - 1 t = i 设下标i的元素值最小 For j = i + 1 To n If a(j) a(t) Then t = j Next j If t i Then 若a(i)不是最小,则交换位置 min = a(t) : a(t) = a(i) : a(i) = min End IfNext il 自定义过程sub与函数function(重点复习)过程(按地址byref和按值byval传递)函数(返回值fn=要返回的值)(重点准备)数组作参数必须按地址传递过程sub与函数function的编程应用示例1.编写函数: 求阶乘(P.187上机练习题2)、判断一个数是否为素数(P.163例5-2、5-3)、计算Single类型一维数组所有元素的平均值(P.186程序设计题1)2. 编制过程mn,求integer类型一维数组中的最大值/最小值(P.171例5-9,P.176 例5-13)。种类名称表示形式数据类型基本类型Byte 、Integer(2B)、Long(4B)、Single(4B)、Double(8B)、Currency(8B)String、Boolean(2B)、Date(8B)、Variant(16B)常量直接常量由其“书写”方式决定,例:1.23E-12、1.618!、&O16、&HA9、 “A9”、true符号常量Const = As 类型 例:Const MyABC = “Enjoy VB!”变量变量命名 | | 注:不能与关键字同名变量声明Dim 变量名 As 类型 , 变量 As 类型 , 例:Dim i As Integer (等价Dim i %) 或: Dim x As Integer , y As Double Dim name As String*4变量作用域过程级变量 Dim 语句位于Sub过程内部、 Static 静态变量(值保留)模块级变量 Dim语句位于“通用”声明处(F两次调用期间变量值保留不变)函数数学函数Int()、Sqr()、Exp()、Log()、Sin(30*3.14/180) 、Int(Rnd*(最大值-最小值+1)+最小值)字符函数Len() 、Mid(s, Len(s), n)、Right(s, n)、Trim()、Ucase()、String()、InStr()转换函数Str()/Val()、 Chr(Asc(“D”)+1)、CStr()其他函数Tab()、 Spc()、Space()、 Rgb()、Qbcolor()、Time、 Date 、Now运算符算术运算符 、* 、/ 、Mod 、 、+ 、- 字符运算符+ 、& 例:”ZUCC” + Str(2009) 、”ZUCC” & 2009 注:连接方向关系运算符= 、 、= 、 、= 逻辑运算符Not 、And 、Or控制结构顺序结构变量 = 表达式 例:x = x + 1 、 y = x选择结构If Then语句块1 ElseIf Then 语句块2 Else 语句块n+1 End IfSelect Case Case 语句块1Case 语句块2Case Else语句块n+1 End Select循环结构For 循环控制变量 = 初值 To 终值 Step 步长 语句块Next 循环控制变量 Do While | Until 语句块Loop While | Until While 语句块Wend输入/输出输入函数InputBox(“提示信息”) 例:x=Val( InputBox(“x=”)输出函数Msgbox(“提示信息”) 例:n= Msgbox(“确定吗?”)输出方法Print 变量列表等 或: Msg
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 19 老房子(教学设计)-2023-2024学年赣美版美术四年级下册
- 2025-2026学年芜湖市重点中学高三物理第一学期期末检测模拟试题
- 2026届福州教育学院附属中学物理高三上期末达标测试试题
- 九年级英语下册 Module 3 Sport and health Unit 6 Caring for your health说课稿1 牛津深圳版
- 人教版地理八上第四章《第一节 交通运输》(共2课时)说课稿
- 推拿治疗学试题库附答案详解【模拟题】
- 带式球团焙烧工工艺创新考核试卷及答案
- 经编机操作工岗位操作技能考核试卷及答案
- 重冶备料破碎工三级安全教育(车间级)考核试卷及答案
- 工业废气治理工三级安全教育(公司级)考核试卷及答案
- 综合能源管理平台方案设计说明书
- 工程材料、构配件或设备清单
- 小学一年级《体育与健康》教学课件
- 小班-数学-爱跳的棉花糖(上下、前后、里外方位)-课件(互动版)
- 葡萄糖生产工艺原理、过程控制点及流程图
- CPK数据图表生成器
- 高速公路工程电子招标标准施工招标文件(2022年试行版)
- 云南省临沧县富康河铜矿勘探项目环评报告
- 老年人误吸的预防
- 公司档案分类方案
- 《艺术概论》章节测试及答案
评论
0/150
提交评论