ExcelVBA语句集.pdf
《ExcelVBA语句集.pdf》由会员分享,可在线阅读,更多相关《ExcelVBA语句集.pdf(16页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、Excel VBA 语句集Posted in Software on March 6th,2009 by Meteor 定制模块行为(1)Option Explicit 强制对模块内所有变量进行声明Option Private Module 标记模块为私有,仅对同一工程中其它模块有用,在宏对话框中不显示Option Compare Text 字符串不区分大小写Option Base 1 指定数组的第一个下标为1 (2)On Error Resume Next 忽略错误继续执行VBA代码,避免出现错误消息(3)On Error GoTo ErrorHandler 当错误发生时跳转到过程中的某个位
2、置(4)On Error GoTo 0 恢复正常的错误提示(5)Application.DisplayAlerts=False 在程序执行过程中使出现的警告框不显示(6)Application.ScreenUpdating=False 关闭屏幕刷新Application.ScreenUpdating=True 打开屏幕刷新(7)Application.Enable.CancelKey=xlDisabled 禁用 Ctrl+Break中止宏运行的功能工作簿(8)Workbooks.Add()创建一个新的工作簿(9)Workbooks(“book1.xls”).Activate 激活名为 book
3、1 的工作簿(10)ThisWorkbook.Save 保存工作簿(11)ThisWorkbook.close 关闭当前工作簿(12)ActiveWorkbook.Sheets.Count 获取活动工作薄中工作表数(13)ActiveWorkbook.name 返回活动工作薄的名称(14)ThisWorkbook.Name 返回当前工作簿名称 ThisWorkbook.FullName 返回当前工作簿路径和名称(15)ActiveWindow.EnableResize=False 禁止调整活动工作簿的大小(16)Application.Window.Arrange xlArrangeStyle
4、Tiled 将工作簿以平铺方式排列(17)ActiveWorkbook.WindowState=xlMaximized 将当前工作簿最大化工作表(18)ActiveSheet.UsedRange.Rows.Count 当前工作表中已使用的行数(19)Rows.Count 获取工作表的行数(注:考虑向前兼容性)(20)Sheets(Sheet1).Name=“Sum”将 Sheet1 命名为 Sum (21)ThisWorkbook.Sheets.Add Before:=Worksheets(1)添加一个新工作表在第一工作表前(22)ActiveSheet.Move After:=ActiveW
5、orkbook._ Sheets(ActiveWorkbook.Sheets.Count)将当前工作表移至工作表的最后(23)Worksheets(Array(“sheet1”,”sheet2”).Select 同时选择工作表1 和工作表 2 (24)Sheets(“sheet1”).Delete或 Sheets(1).Delete 删除工作表 1 (25)ActiveWorkbook.Sheets(i).Name 获取工作表 i 的名称(26)ActiveWindow.DisplayGridlines=Not ActiveWindow.DisplayGridlines 切换工作表中的网格线显
6、示,这种方法也可以用在其它方面进行相互切换,即相当于开关按钮(27)ActiveWindow.DisplayHeadings=Not ActiveWindow.DisplayHeadings 切换工作表中的行列边框显示(28)ActiveSheet.UsedRange.FormatConditions.Delete 删除当前工作表中所有的条件格式(29)Cells.Hyperlinks.Delete 取消当前工作表所有超链接(30)ActiveSheet.PageSetup.Orientation=xlLandscape 或 ActiveSheet.PageSetup.Orientation=
7、2 将页面设置更改为横向(31)ActiveSheet.PageSetup.RightFooter=ActiveWorkbook.FullName 在页面设置的表尾中输入文件路径ActiveSheet.PageSetup.LeftFooter=Application.UserName 将用户名放置在活动工作表的页脚单元格/单元格区域(32)ActiveCell.CurrentRegion.Select 或 Range(ActiveCell.End(xlUp),ActiveCell.End(xlDown).Select 选择当前活动单元格所包含的范围,上下左右无空行(33)Cells.Selec
8、t 选定当前工作表的所有单元格(34)Range(“A1”).ClearContents 清除活动工作表上单元格A1中的内容Selection.ClearContents 清除选定区域内容Range(“A1:D4”).Clear 彻底清除 A1至 D4单元格区域的内容,包括格式(35)Cells.Clear 清除工作表中所有单元格的内容(36)ActiveCell.Offset(1,0).Select 活动单元格下移一行,同理,可下移一列(37)Range(“A1”).Offset(ColumnOffset:=1)或 Range(“A1”).Offset(,1)偏移一列Range(“A1”).
9、Offset(Rowoffset:=-1)或 Range(“A1”).Offset(-1)向上偏移一行(38)Range(“A1”).Copy Range(“B1”)复制单元格A1,粘贴到单元格 B1中Range(“A1:D8”).Copy Range(“F1”)将单元格区域复制到单元格F1开始的区域中Range(“A1:D8”).Cut Range(“F1”)剪切单元格区域A1至 D8,复制到单元格 F1 开始的区域中Range(“A1”).CurrentRegion.Copy Sheets(“Sheet2”).Range(“A1”)复制包含 A1的单元格区域到工作表2 中以 A1起始的单元
10、格区域中注:CurrentRegion 属性等价于定位命令,由一个矩形单元格块组成,周围是一个或多个空行或列(39)ActiveWindow.RangeSelection.Value=XX 将值 XX输入到所选单元格区域中(40)ActiveWindow.RangeSelection.Count 活动窗口中选择的单元格数(41)Selection.Count 当前选中区域的单元格数(42)GetAddress=Replace(Hyperlinkcell.Hyperlinks(1).Address,mailto:,”)返回单元格中超级链接的地址并赋值(43)TextColor=Range(“A1
11、”).Font.ColorIndex 检查单元格 A1的文本颜色并返回颜色索引Range(“A1”).Interior.ColorIndex 获取单元格 A1背景色(44)cells.count 返回当前工作表的单元格数(45)Selection.Range(“E4”).Select 激活当前活动单元格下方3 行,向右4 列的单元格(46)Cells.Item(5,”C”)引单元格 C5 Cells.Item(5,3)引单元格 C5 (47)Range(“A1”).Offset(RowOffset:=4,ColumnOffset:=5)或 Range(“A1”).Offset(4,5)指定单元
12、格 F5 (48)Range(“B3”).Resize(RowSize:=11,ColumnSize:=3)Rnage(“B3”).Resize(11,3)创建 B3:D13区域(49)Range(“Data”).Resize(,2)将 Data 区域扩充 2 列(50)Union(Range(“Data1”),Range(“Data2”)将 Data1 和 Data2 区域连接(51)Intersect(Range(“Data1”),Range(“Data2”)返回 Data1 和 Data2区域的交叉区域(52)Range(“Data”).Count 单元格区域 Data 中的单元格数 R
13、ange(“Data”).Columns.Count 单元格区域 Data 中的列数Range(“Data”).Rows.Count 单元格区域 Data 中的行数(53)Selection.Columns.Count 当前选中的单元格区域中的列数Selection.Rows.Count 当前选中的单元格区域中的行数(54)Selection.Areas.Count 选中的单元格区域所包含的区域数(55)ActiveSheet.UsedRange.Row 获取单元格区域中使用的第一行的行号(56)Rng.Column 获取单元格区域Rng左上角单元格所在列编号(57)ActiveSheet.C
14、ells.SpecialCells(xlCellTypeAllFormatConditions)在活动工作表中返回所有符合条件格式设置的区域(58)Range(“A1”).AutoFilter Field:=3,VisibleDropDown:=False 关闭由于执行自动筛选命令产生的第3 个字段的下拉列表名称(59)Range(“A1:C3”).Name=“computer”命名 A1:C3区域为 computer 或 Range(“D1:E6”).Name=“Sheet1!book”命名局部变量,即 Sheet1上区域 D1:E6为 book 或 Names(“computer”).Na
15、me=“robot”将区域 computer 重命名为robot (60)Names(“book”).Delete 删除名称(61)Names.Add Name:=“ContentList”,_ RefersTo:=“=OFFSET(Sheet1!A2,0,0,COUNTA(Sheet2!$A:$A)”动态命名列(62)Names.Add Name:=“Company”,RefersTo:=“CompanyCar”命名字符串CompanyCar (63)Names.Add Name:=“Total”,RefersTo:=123456 将数字 123456 命名为Total。注意数字不能加引号,
16、否则就是命名字符串了。(64)Names.Add Name:=“MyArray”,RefersTo:=ArrayNum 将数组 ArrayNum命名为 MyArray。(65)Names.Add Name:=“ProduceNum”,RefersTo:=“=$B$1”,Visible:=False 将名称隐藏(66)ActiveWorkbook.Names(“Com”).Name 返回名称字符串公式与函数(67)Application.WorksheetFunction.IsNumber(“A1”)使用工作表函数检查 A1单元格中的数据是否为数字(68)Range(“A:A”).Find(Ap
17、plication.WorksheetFunction.Max(Range(“A:A”).Activate 激活单元格区域 A列中最大值的单元格(69)Cells(8,8).FormulaArray=“=SUM(R2C-1:R-1C-1*R2C:R-1C)”在单元格中输入数组公式。注意必须使用R1C1样式的表达式图表(70)ActiveSheet.ChartObjects.Count 获取当前工作表中图表的个数(71)A ctiveSheet.ChartObjects(“Chart1”).Select 选中当前工作表中图表 Chart1 (72)ActiveSheet.ChartObjects
18、(“Chart1”).Activate ActiveChart.ChartArea.Select 选中当前图表区域(73)WorkSheets(“Sheet1”).ChartObjects(“Chart2”).Chart._ ChartArea.Interior.ColorIndex=2 更改工作表中图表的图表区的颜色(74)Sheets(“Chart2”).ChartArea.Interior.ColorIndex=2 更改图表工作表中图表区的颜色(75)Charts.Add 添加新的图表工作表(76)ActiveChart.SetSourceData Source:=Sheets(“She
19、et1”).Range(“A1:D5”),_ PlotBy:=xlColumns 指定图表数据源并按列排列(77)ActiveChart.Location Where:=xlLocationAsNewSheet 新图表作为新图表工作表(78)ActiveChart.PlotArea.Interior.ColorIndex=xlNone 将绘图区颜色变为白色(79)WorkSheets(“Sheet1”).ChartObjects(1).Chart._ Export FileName:=“C:MyChart.gif”,FilterName:=“GIF”将图表1 导出到 C盘上并命名为 MyCha
20、rt.gif 窗体(80)MsgBox“Hello!”消息框中显示消息Hello (81)Ans=MsgBox(“Continue?”,vbYesNo)在消息框中点击“是”按钮,则Ans值为 vbYes;点击“否”按钮,则Ans 值为 vbNo。If MsgBox(“Continue?”,vbYesNo)vbYes Then Exit Sub 返回值不为“是”,则退出(82)Config=vbYesNo+vbQuestion+vbDefaultButton2 使用常量的组合,赋值组 Config 变量,并设置第二个按钮为缺省按钮(83)MsgBox“This is the first line
21、.”&vbNewLine&“Second line.”在消息框中强制换行,可用vbCrLf 代替 vbNewLine。(84)MsgBox the average is:&Format(Application.WorksheetFunction.Average(Selection),#,#0.00),vbInformation,selection count average&Chr(13)应用工作表函数返回所选区域的平均值并按指定格式显示(85)Userform1.Show 显示用户窗体(86)Load Userform1 加载一个用户窗体,但该窗体处于隐藏状态(87)Userform1.Hi
22、de 隐藏用户窗体(88)Unload Userform1 或 Unload Me 卸载用户窗体(89)(图像控件).Picture=LoadPicture(“图像路径”)在用户窗体中显示图形(90)UserForm1.Show 0 或 UserFo rm1.Show vbModeless 将窗体设置为无模式状态(91)Me.Height=Int(0.88*ActiveWindow.Height)窗体高度为当前活动窗口高度的 0.88 Me.Width=Int(0.88*ActiveWindow.Width)窗体宽度为当前活动窗口高度的 0.88 事件(92)Application.Enabl
23、eEvents=False 禁用所有事件Application.EnableEvents=True 启用所有事件注:不适用于用户窗体控件触发的事件对象(93)Set ExcelSheet=CreateObject(Excel.Sheet)创建一个 Excel 工作表对象ExcelSheet.Application.Visible=True 设置 Application 对象使Excel 可见ExcelSheet.Application.Cells(1,1).Value=Data 在表格的第一个单元中输入文本TEST.XLS 将该表格保存到C:test.xls 目录ExcelSheet.Appl
24、ication.Quit 关闭 Excel Set ExcelSheet=Nothing 释放该对象变量(94)声明并创建一个Excel 对象引用 Dim xlApp As Excel.Application Dim xlBook As Excel.Workbook Dim xlSheet As Excel.WorkSheet Set xlApp=CreateObject(Excel.Application)Set xlBook=xlApp.Workbooks.Add Set xlSheet=xlBook.Worksheets(1)(95)创建并传递一个 Excel.Application 对
25、象的引用 Call MySub(CreateObject(Excel.Application)(96)Set d=CreateObject(Scripting.Dictionary)创建一个 Dictionary 对象变量(97)d.Add a,Athens 为对象变量添加关键字和条目其他(98)Application.OnKey“I”,”macro”设置 Ctrl+I键为 macro 过程的快捷键(99)Application.CutCopyMode=False 退出剪切/复制模式(100)Application.Volatile True 无论何时工作表中任意单元格重新计算,都会强制计算该
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- ExcelVBA 语句
限制150内