ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 Excel Home精品图文教程库
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
300集Office 2010微视频教程 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
查看: 691|回复: 1

[分享] 常用的VBA语句

[复制链接]

TA的精华主题

TA的得分主题

发表于 2019-3-26 17:28 | 显示全部楼层 |阅读模式
(1) Option Explicit '强制对模块内所有变量进行声明 Option Private Module'标记模块为私有,仅对同一工程中其它模块有用,在宏对话框中不显示 OptionCompare Text '字符串不区分大小写 Option Base 1 '指定数组的第一个下标为1
(2) On Error Resume Next '忽略错误继续执行VBA代码,避免出现错误消息
(3) On Error GoTo ErrorHandler '当错误发生时跳转到过程中的某个位置
(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 '激活名为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.Arrange xlArrangeStyleTiled ‘将工作簿以平铺方式排列
(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:=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=Not ActiveWindow.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)Range(“A1”).Offset(,1)‘偏移一列Range(“A1”).Offset(Rowoffset:=-1)Range(“A1”).Offset(-1)‘向上偏移一行
(38) Range(“A1”).CopyRange(“B1”) '复制单元格A1,粘贴到单元格B1Range(“A1:D8”).Copy Range(“F1”) '将单元格区域复制到单元格F1开始的区域中Range(“A1:D8”).Cut Range(“F1”) '剪切单元格区域A1D8,复制到单元格F1开始的区域中Range(“A1”).CurrentRegion.Copy Sheets(“Sheet2”).Range(“A1”) '复制包含A1的单元格区域到工作表2中以A1起始的单元格区域中注:CurrentRegion属性等价于定位命令,由一个矩形单元格块组成,周围是一个或多个空行或列,本示例选定工作表Sheet1 上的当前区域。Worksheets("Sheet1").Activate ActiveCell.CurrentRegion.Select 本示例假定在工作表Sheet1 中有一个包含标题行的表。本示例选定该表,但不选定标题行。运行本示例之前,活动单元格必须处于该表中。Set tbl = ActiveCell.CurrentRegion tbl.Offset(1, 0).Resize(tbl.Rows.Count - 1,_ tbl.Columns.Count).Select
(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”).Font.ColorIndex ‘检查单元格A1的文本颜色并返回颜色索引Range(“A1”).Interior.ColorIndex ‘获取单元格A1背景色
(44) cells.count ‘返回当前工作表的单元格数
(45) Selection.Range(“E4”).Select ‘激活当前活动单元格下方3行,向右4列的单元格
(46) Cells.Item(5,”C”) ‘引单元格C5Cells.Item(5,3) ‘引单元格C5
(47) Range(“A1”).Offset(RowOffset:=4,ColumnOffset:=5) Range(“A1”).Offset(4,5) ‘指定单元格F5
(48) Range(“B3”).Resize(RowSize:=11,ColumnSize:=3) Rnage(“B3”).Resize(11,3) ‘创建B3D13区域
(49) Range(“Data”).Resize(,2) ‘Data区域扩充2
(50) Union(Range(“Data1”),Range(“Data2”)) ‘Data1Data2区域连接

评分

1

查看全部评分

TA的精华主题

TA的得分主题

发表于 2019-3-26 17:54 | 显示全部楼层
作为VBA小白,有不少东西没见过,学习了\(^o^)/~
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

关闭

最新热点上一条 /1 下一条

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-4-19 10:17 , Processed in 0.038863 second(s), 10 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

快速回复 返回顶部 返回列表