Excel VBA 入门(零)
本教程所用系统环境:
- Windows 10
- Excel 2013
1. 添加开发工具
打开Excel,依然找到“文件”->“选项”->“自定义功能区”,在右侧主选项卡下面的选项中,找到“开发工具”,在前面的小框打勾,确定。返回Excel,即可在菜单栏右侧看到有开发工具:


2. 使用VBE
VBE即VBA的编辑环境。通常有两种方式可以进入
- 菜单栏 -> 开发工具 -> Visual Basic
- 快捷键:Alt + F11
3. 第一个VBA程序
进入VBE后,在菜单栏依次选择“插入”->“模块”,然后光标会自动定位到代码窗口中,VBA中的代码即在些编写。
VBA常使用“过程”来组织代码(另一种方式是“函数”,后面会介绍)。过程用
Sub sub_name()
'
'中间这里是我们要实现各种操作的VBA代码
'
End Sub
表示。其中Sub和末尾的End Sub是必须的固定形式,sub_name是过程名称,后面的括号()是必须的。VBA中允许使用中文作为过程名称,但建议还是尽量使用英文为好。
第一个VBA程序
Sub Hello_World()
Debug.Print "Hello, World!"
MsgBox "Hello, World!"
End Sub
这个过程的名字是Hello_World。运行VBA代码有三种方式:
- 点击菜单栏下面的工具栏中的绿色向右的小三角

- 在菜单栏选择“运行”->“运行子过程/用户窗体 F5”
- 快捷键,按上键盘上的F5
应该注意的是,如果运行代码前鼠标光标没有在任一个VBA过程内部,VBE会弹出一个对话框,请求选择将要用于运行的VBA过程:

第一行代码Debug.Print "Hello, World!"会在位于VBE下方的“立即窗口”中输出双引号中的内容,即Hello, World:

(如果VBE中没有出现立即窗口,可以在菜单栏“视图”中选择显示)
第二行代码MsgBox "Hello, World!"则会以弹窗的形式显示双引号中的Hello, World!:

4. 保存
包含有VBA代码的Excel文件不能再保存为.xls或.xlsx文件,应保存为.xlsm文件

本系列教程其它文章
Excel VBA 入门(一)数据类型
Excel VBA 入门(二)数组和字典
Excel VBA 入门(三) 流程控制1-条件选择
Excel VBA 入门(四)流程控制2-循环控制
Excel VBA 入门(五)Excel对象操作
Excel VBA 入门(六)过程和函数
Excel VBA 入门(七)注释、宏按钮及错误处理
Excel VBA 入门(八)单元格边框
Excel VBA 入门(九)操作工作薄
Excel VBA 入门(十)用户窗体开发
Excel VBA 入门(零)的更多相关文章
- Excel VBA入门(九)操作工作薄
虽然我前面讲过,在VBA中操作工作薄并不是件明智的事,但有些时候,还是避免不了要这么做.绝大多数情况下,我们要做的是获取到某个工作薄对象,并以此来获得其中的工作表对象,然后再对工作表中的数据进行处理. ...
- Excel VBA入门(八)单元格边框
本文基于以下文件 http://pan.baidu.com/s/1nvJtsu9 (部分)内容预览: 1. 边框样式 Sub cell_format() Dim sht As Worksheet Di ...
- Excel VBA入门(七)注释、宏按钮及错误处理
系统性的知识前面已经讲完,从本章开始,本系列教程涉及的将会是一些相对凌散的内容. 1. 注释 代码注释是一件利人利己的事,为了方便自己在代码需要更新修改时,依然能够快速地看懂自己完的每一行代码到底是什 ...
- Excel VBA入门(六)过程和函数
前面讲过,VBA代码有两种组织形式,一种就是过程(前面的示例中都在使用),另一种就是函数.其实过程和函数有很多相同之处,除了使用的关键字不同之外,还有不同的是: 函数有返回值,过程没有 函数可以在Ex ...
- Excel VBA入门(五)Excel对象操作
本章是本系列教程的重点.但我觉得应该不是难点.从第零章开始到学完本章,应该可以把VBA用于实战中了. Excel对象主要有4个: 工作薄 Workbook 工作表 Worksheet 单元格区域 Ra ...
- Excel VBA入门(四)流程控制2-循环控制
所谓循环控制,即在循环执行一段代码,用于完成一些重复性任务. VBA中的循环控制语句主要有3种:for.while.loop.对于大多数人来说,for的使用频率最高,而我个人也觉得for是最为灵活的, ...
- Excel VBA入门(三) 流程控制1-条件选择
VBA中的流程控制分为两种,其一是条件结构式的,即根据条件判断的结果去选择性执行相应的语句(块):另一种是循环,即循环地执行语句(块).本节介绍第一种. 1. IF if 语句其实包含有几种形式: ① ...
- Excel VBA入门(一)数据类型
与其它的编程语言一样,VBA也有它自己的数据类型.讲到数据类型,就离不开"变量"与"常量"这两个概念,变量与常量,都是用于保存数据的.顾名思义,"变量 ...
- Excel VBA入门(二)数组和字典
数组和字典也是VBA的常用到数据类型之一.但是我翻了有四五本VBA教程相关的书,里面都没有介绍到字典,数组到是在介绍数据类型时有介绍,而并没有提到字典. 事实上,字典不是VBA内置的类型,它是Wind ...
随机推荐
- 开始学习jQuery
一 jQuery是什么? 1. jQuery由美国人John Resig创建,至今已吸引了来自世界各地的众多 javascript高手加入其team. 2.jQuery是继prototype之后又一个 ...
- 301重定向方法大全及SEO中网址规范化,看着不错先收下
301重定向方法大全及SEO中网址规范化 现在大多数网站都存在一些内容相同但网址(URL)不一样的重复内容,这些重复的内容对于搜索引擎来说却可能被认为是复制网页,复制网页虽然不会被惩罚但因多个网址存在 ...
- 历届试题 小数第n位(小技巧)
问题描述 我们知道,整数做除法时,有时得到有限小数,有时得到无限循环小数. 如果我们把有限小数的末尾加上无限多个0,它们就有了统一的形式. 本题的任务是:在上面的约定下,求整数除法小数点后的第n位开始 ...
- li布局问题
问题示意,好多网站一般都有这种布局,如 问题主要原因,第一个li没有margin-left 其余有(这里只考虑一排的情况) 第一种解决方式: <!DOCTYPE html> <htm ...
- 准确计算Java中对象的大小
由于在项目中需要大致计算一下对象的内存占用率(Hadoop中的Reduce端内存占用居高不下却又无法解释),因此深入学习了一下如何准确计算对象的大小. 使用system.gc()和java.lang. ...
- 017:磁盘I/0介绍和测试
一. 磁盘 1. 磁盘的访问模式 顺序访问 顺序的访问磁盘上的块: 一般经过测试后,得到该值的单位是MB/s,表示为磁盘带宽,普通硬盘在 50~ 100 MB/s 随机访问 随机的访问磁盘上的块 也可 ...
- 016:Explain
一. Explain EXPLAIN 官方文档 1.explain说明 explain是解释SQL语句的执行计划,即显示该SQL语句怎么执行的 使用explain的时候,也可以使用desc 5.6 版 ...
- python学习(二十六) 字典
# 访问字典car = {'make':'bmw', 'model':'550i', 'year':2016}print(car)print(car['make']) # 添加元素d = {}d['o ...
- 高效网页去重算法-SimHash
记得以前有人问过我,网页去重算法有哪些,我不假思索的说出了余弦向量相似度匹配,但如果是数十亿级别的网页去重呢?这下糟糕了,因为每两个网页都需要计算一次向量内积,查重效率太低了!我当时就想:论查找效率肯 ...
- oracle系统表v$session、v$sql字段说明(转)
在本视图中,每一个连接到数据库实例中的 session都拥有一条记录.包括用户 session及后台进程如 DBWR, LGWR, arcchiver等等. V$SESSION中的常用列 V$SESS ...