Excel之VBA编程常用语句300句之一.docx
- 文档编号:9901627
- 上传时间:2023-05-21
- 格式:DOCX
- 页数:20
- 大小:25.39KB
Excel之VBA编程常用语句300句之一.docx
《Excel之VBA编程常用语句300句之一.docx》由会员分享,可在线阅读,更多相关《Excel之VBA编程常用语句300句之一.docx(20页珍藏版)》请在冰点文库上搜索。
Excel之VBA编程常用语句300句之一
Excel之VBA编程常用语句300句之一
2010-01-0910:
56定制模块行为
(1)OptionExplicit'强制对模块内所有变量进行声明
OptionPrivateModule'标记模块为私有,仅对同一工程中其它模块有用,在宏对话框中不显示
OptionCompareText'字符串不区分大小写
OptionBase1'指定数组的第一个下标为1
(2)OnErrorResumeNext'忽略错误继续执行VBA代码,避免出现错误消息
(3)OnErrorGoToErrorHandler'当错误发生时跳转到过程中的某个位置
(4)OnErrorGoTo0'恢复正常的错误提示
(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'激活名为book1的工作簿
(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.ArrangexlArrangeStyleTiled‘将工作簿以平铺方式排列
(17)ActiveWorkbook.WindowState=xlMaximized‘将当前工作簿最大化
Excel之VBA编程常用语句300句之二2010-01-0910:
58ThisWorkbook.ActiveSheet.Rows
(1).RowHeight=10‘改变工作表的行1的高度值设置为10
(121)ThisWorkbook.Worksheets
(1).Activate‘当前工作簿中的第一个工作表被激活
(122)ThisWorkbook.Worksheets("Sheet1").Rows
(1).Font.Bold=True‘设置工作表Sheet1中的行1数据为粗体
(123)ThisWorkbook.Worksheets("Sheet1").Rows
(1).Hidden=True‘将工作表Sheet1中的行1隐藏
ActiveCell.EntireRow.Hidden=True‘将当前工作表中活动单元格所在的行隐藏
注:
同样可用于列。
(124)ActiveSheet.Range(“A:
A”).EntireColumn.AutoFit‘自动调整当前工作表A列列宽
(125)ActiveSheet.Cells.SpecialCells(xlCellTypeConstants,xlTextValues)‘选中当前工作表中常量和文本单元格
ActiveSheet.Cells.SpecialCells(xlCellTypeConstants,xlErrors+xlTextValues)‘选中当前工作表中常量和文本及错误值单元格
*******************************************************
公式与函数
(126)Application.MacroOptionsMacro:
=”SumPro”,Category:
=4‘将自定义的SumPro函数指定给Excel中的“统计函数”类别
(127)Application.MacroOptionsMacro:
=”SumPro”,_
Description:
=”FirstSum,thenProduct”‘为自定义函数SumPro进行了功能说明
(128)Application.WorksheetFunction.CountA(Range(“A:
A”))+1‘获取A列的下一个空单元格
(129)WorksheetFunction.CountA(Cell.EntireColumn)‘返回该单元格所在列非空单元格的数量
WorksheetFunction.CountA(Cell.EntireRow)‘返回该单元格所在行非空单元格的数量
(130)WorksheetFunction.CountA(Cells)‘返回工作表中非空单元格数量
(131)ActiveSheet.Range(“A20:
D20”).Formula=“=Sum(R[-19]C:
R[-1]C”’对A列至D列前19个数值求和
*******************************************************
图表
(132)ActiveWindow.Visible=False
或ActiveChart.Deselect‘使图表处于非活动状态
(133)TypeName(Selection)=”Chart”‘若选中的为图表,则该语句为真,否则为假
(134)ActiveSheet.ChartObjects.Delete‘删除工作表上所有的ChartObject对象
ActiveWorkbook.Charts.Delete‘删除当前工作簿中所有的图表工作表
*******************************************************
窗体和控件
(135)UserForms.Add(MyForm).Show‘添加用户窗体MyForm并显示
(136)TextName.SetFocus‘设置文本框获取输入焦点
(137)SpinButton1.Value=0‘将数值调节钮控件的值改为0
(138)TextBox1.Text=SpinButton1.Value‘将数值调节钮控件的值赋值给文本框控件
SpinButton1.value="/Val(TextBox1.Text)"‘将文本框控件值赋给数值调节钮控件
CStr(SpinButton1.Value)=TextBox1.Text‘数值调节钮控件和文本框控件相比较
(139)UserForm1.Controls.Count‘显示窗体UserForm1上的控件数目
(140)ListBox1.AddItem“Command1”‘在列表框中添加Command1
(141)ListBox1.ListIndex‘返回列表框中条目的值,若为-1,则表明未选中任何列表框中的条目
(142)RefEdit1.Text‘返回代表单元格区域地址的文本字符串
RefEdit1.Text=ActiveWindow.RangeSelection.Address‘初始化RefEdit控件显示当前所选单元格区域
SetFirstCell=Range(RefEdit1.Text).Range(“A1”)‘设置某单元格区域左上角单元格
(143)Application.OnTimeNow+TimeValue("00:
00:
15"),"myProcedure"‘等待15秒后运行myProcedure过程
(144)ActiveWindow.ScrollColumn=ScrollBarColumns.Value‘将滚动条控件的值赋值给ActiveWindow对象的ScrollColumn属性
ActiveWindow.ScrollRow=ScrollBarRows.Value‘将滚动条控件的值赋值给ActiveWindow对象的ScrollRow属性
(145)UserForm1.ListBox1.AddItemSheets(“Sheet1”).Cells(1,1)‘将单元格A1中的数据添加到列表框中
ListBox1.List=Product‘将一个名为Product数组的值添加到ListBox1中
ListBox1.RowSource=”Sheet2!
SumP”‘使用工作表Sheet2中的SumP区域的值填充列表框
(146)ListBox1.Selected(0)‘选中列表框中的第一个条目(注:
当列表框允许一次选中多个条目时,必须使用Selected属性)
(147)ListBox1.RemoveItemListBox1.ListIndex‘移除列表框中选中的条目
*******************************************************
对象
Application对象
(148)Application.UserName‘返回应用程序的用户名
(149)Application.Caller‘返回代表调用函数的单元格
(150)Application.Caller.Parent.Parent‘返回调用函数的工作簿名称
(151)Application.StatusBar=”请等待……”‘将文本写到状态栏
Application.StatusBar=”请等待……”&Percent&“%Completed”‘更新状态栏文本,以变量Percent代表完成的百分比
Application.StatusBar=False‘将状态栏重新设置成正常状态
(152)Application.GotoReference:
=Range(“A1:
D4”)‘指定单元格区域A1至D4,等同于选择“编辑——定位”,指定单元格区域为A1至D4,不会出现“定位”对话框
(153)Application.Dialogs(xlDialogFormulaGoto).Show‘显示“定位”对话框,但定位条件按钮无效
(154)Application.Dialogs(xlDialogSelectSpecial).Show‘显示“定位条件”对话框
(155)Application.Dialogs(xlDialogFormatNumber).show‘显示“单元格格式”中的“数字”选项卡
Application.Dialogs(xlDialogAlignment).show‘显示“单元格格式”中的“对齐”选项卡
Application.Dialogs(xlDialogFontProperties).show‘显示“单元格格式”中的“字体”选项卡
Application.Dialogs(xlDialogBorder).show‘显示“单元格格式”中的“边框”选项卡
Application.Dialogs(xlDialogPatterns).show‘显示“单元格格式”中的“图案”选项卡
Application.Dialogs(xlDialogCellProtection).show‘显示“单元格格式”中的“保护”选项卡
注:
无法一次显示带选项卡的“单元格格式”对话框,只能一次显示一个选项卡。
(156)Application.Dialogs(xlDialogFormulaGoto).showRange("b2"),True‘显示“引用位置”的默认单元格区域并显示引用使其出现在窗口左上角(注:
内置对话框参数的使用)
(157)Application.CommandBars
(1).Controls
(2).Controls(16).Execute‘执行“定位”话框,相当于选择菜单“编辑——定位”命令
(158)Application.Transpose(Array(“Sun”,”Mon”,”Tur”,”Wed”,”Thu”,”Fri”,”Sat”))‘返回一个垂直的数组
(159)Application.Version‘返回使用的Excel版本号
(160)Application.Cursor=xlNorthwestArrow‘设置光标形状为北西向箭头
Application.Cursor=xlIBeam‘设置光标形状为Ⅰ字形
Application.Cursor=xlWait‘设置光标形状为沙漏(等待)形
Application.Cursor=xlDefault‘恢复光标的默认设置
(161)Application.WindowState‘返回窗口当前的状态
Application.WindowState=xlMinimized‘窗口最小化
Application.WindowState=xlMaximized‘窗口最大化
Application.WindowState=xlNormal‘窗口正常状态
(162)Application.UsableHeight‘获取当前窗口的高度
Application.UsableWidth‘获取当前窗口的宽度
(163)Application.ActiveCell.Address‘返回活动单元格的地址(注:
返回的是绝对地址)
(164)Application.ActivePrinter‘返回当前打印机的名称
(165)Application.ActiveSheet.Name‘返回活动工作表的名称
(166)Application.ActiveWindow.Caption‘返回活动窗口的标题
(167)Application.ActiveWorkbook.Name‘返回活动工作簿的名称
(168)Application.Selection.Address‘返回所选区域的地址
(169)Application.ThisWorkbook.Name‘返回当前工作簿的名称
(170)Application.CalculationVersion‘返回Excel计算引擎版本(右边四位数字)及Excel版本(左边两位数字)
(171)Application.MemoryFree‘以字节为单位返回Excel允许使用的内存数(不包括已经使用的内存)
(172)Application.MemoryUsed‘以字节为单位返回Excel当前使用的内存数
(173)Application.MemoryTotal‘以字节为单位返回Excel可以使用的内存数(包括已使用的内存,是MemoryFree和MemoryUsed的总和)
(174)Application.OperatingSystem‘返回所使用的操作系统的名称和版本
(175)Application.OrganizationName‘返回Excel产品登记使用的组织机构的名称
(176)Application.FindFormat‘查找的格式种类
Application.ReplaceFormat‘替换查找到的内容的格式种类
ActiveSheet.Cells.ReplaceWhat:
=”“,_
Replacement:
=”“,SearchFormat:
=True,ReplaceFormat:
=True‘替换查找到的格式
(177)Application.Interactive=False‘忽略键盘或鼠标的输入
(178)Application.Evaluate("Rate")‘若在工作表中定义了常量0.06的名称为”Rate”,则本语句将返回值0.06
(179)Application.OnUndo“UndoOption”,“UndoProcedure”‘选择UndoOption后,将执行UndoProcedure过程
*******************************************************
Range对象
(180)Range(A1:
A10).value="/Application.WorksheetFunction.Transpose(MyArray)"‘将一个含有10个元素的数组转置成垂直方向的工作表单元格区域(A1至A10)
注:
因为当把一维数组的内容传递给某个单元格区域时,该单元格区域中的单元格必须是水平方向的,即含有多列的一行。
若必须使用垂直方向的单元格区域,则必须先将数组进行转置,成为垂直的。
(181)Range(“A65536”).End(xlUp).Row+1‘返回A列最后一行的下一行
(182)rng.Range(“A1”)‘返回区域左上角的单元格
(183)cell.Parent.Parent.Worksheets‘访问当前单元格所在的工作簿
(184)Selection.Font.Bold=NotSelection.Font.Bold‘切换所选单元格是否加粗
(185)ActiveSheet.Range("A:
B").SortKey1:
=Columns("B"),Key2:
=Columns("A"),_
Header:
=xlYes‘两个关键字排序,相邻两列,B列为主关键字,A列为次关键字,升序排列
(186)cell.Range(“A1”).NumberFormat‘显示单元格或单元格区域中的第一个单元格的数字格式
(187)cell.Range(“A1”).HasFormula‘检查单元格或单元格区域中的第一个单元格是否含有公式
或cell.HasFormula‘工作表中单元格是否含有公式
(188)Cell.EntireColumn‘单元格所在的整列
Cell.EntireRow‘单元格所在的整行
(189)rng.Name.Name‘显示rng区域的名称
(190)rng.Address‘返回rng区域的地址
(191)cell.Range(“A1”).Formula‘返回包含在rng区域中左上角单元格中的公式。
注:
若在一个由多个单元格组成的范围内使用Formula属性,会得到错误;若单元格中没有公式,会得到一个字符串,在公式栏中显示该单元格的值。
(192)Range(“D5:
D10”).Cells(1,1)‘返回单元格区域D5:
D10中左上角单元格
(193)ActiveCell.Row‘活动单元格所在的行数
ActiveCell.Column‘活动单元格所在的列数
(194)Range("A1:
B1").HorizontalAlignment=xlLeft‘当前工作表中的单元格区域数据设置为左对齐
(195)ActiveSheet.Range(“A2:
A10”).NumberFormat=”#,##0”‘设置单元格区域A2至A10中数值格式
(196)rng.Replace““,”0”‘用0替换单元格区域中的空单元格
*******************************************************
Collection与object
(197)DimcolMySheetsAsNewCollection
PubliccolMySheetsAsNewCollection‘声明新的集合变量
(198)SetMyRange=Range(“A1:
A5”)‘创建一个名为MyRange的对象变量
(199)
工作表
(18)ActiveSheet.UsedRange.Rows.Count‘当前工作表中已使用的行数
(19)Rows.Count‘获取工作表的行数(注:
考虑向前兼容性)
(20)Sheets(Sheet1).Name=“Sum”'将Sheet1命名为Sum
(21)ThisWorkbook.Sheets.AddBefore:
=Worksheets
(1)'添加一个新工作表在第一工作表前
(22)ActiveSheet.MoveAfter:
=ActiveWorkbook._
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=NotActiveWindow.DisplayGridlines'切换工作表中的网格线显示,这种方法也可以用在其它方面进行相互切换,即相当于开关按钮
(27)ActiveWindow.DisplayHeadings=NotActiveWindow.DisplayHeadings‘切换工作表中的行列边框显示
(28)ActiveSheet.UsedRange.FormatConditions.Delete‘删除当前工作表中所有的条件格式
(29)Cells.Hyperlinks.Delete‘取消当前工作表所有超链接
(30)ActiveSheet.PageSetup.Orientation=xlLandscape
或ActiveSheet.PageSetup.Orientation=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.Select‘选定当前工作表的所有单元格
(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)或Rang
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Excel VBA 编程 常用 语句 300 之一
![提示](https://static.bingdoc.com/images/bang_tan.gif)