第一个程序
程序员学习程序开发都喜欢以输出“hello world”为第一个程序,我们也学习一下这种模式,因为Excel VBA主要是操作Excel,所以我们的第一个程序目的:在A1单元格输入“hello Excel VBA”。
1、打开VBA编辑器(如何打开请看上一讲初始VBA)
2、点击菜单-插入-模块,输入“Sub MyFirtSub”按回车,编辑器会自动补充1个“()"和”End Sub“
Sub MyFirtSub()
End Sub
这就是VBA的一个标准过程,也就是VBA的语言规则,必须按这种规则才行。
3、MyFirtSub过程命名是有一定规则的,比如不能以数字开头,不能用一些VBA内置的关键字等,如果违反了规则,编辑器会给出提示(如果你设置了编辑器”自动语法检测“勾选,会有弹框和红字体提示,否则只有红字体提示)。
4、对象:上面只是一个框架,并没有实际可执行的语句,我们的目的在A1单元格输入“hello Excel VBA”。在上一讲初始VBA里,我们通过录制过程可以发现在操作单元格的时候有ActiveCell、Range("xx")这2种形式,这就是Excel VBA对单元格的描述规则,这种一般称为对象,就是我们要对什么进行操作。我们的任务是对A1单元格操作,所以显然应该用Range("A1")这种形式。
对象:我们要对什么进行操作,比如生活中我们要拿起水杯,水杯就是一种对象。我们读一本书,书也就是我们操作的对象。
在Excel VBA里,有很多的对象,最先接触到的应该就是这种单元格对象。
5、属性:我们的目的在A1单元格输入“hello Excel VBA”。平时我们操作Excel,直接按键盘,就可以输入东西,比如有人问,你的表格里,A1单元格写的是什么,你可能会说,A1里面是”xxx“,翻译成VBA语言,你就是在说Range("A1")的Value是”xxx“,这个Value称作单元格的属性。比如生活中水杯里有多少毫升的水,书有多少页,就是对象所具体有的那些东西。
6、赋值:有了对象、有了属性,那我们就对这个属性进行赋值就可以了,对象与属性之间用”."连接,赋值用”=“,这种就是语言的规则,所以我们接着要写进去的语句就是:Range("A1").Value = "hello Excel VBA",完整的如下:
Sub MyFirstSub()
Range("A1").Value = "hello Excel VBA"
End Sub
细心的可能发现,有些东西我们是写在了双引号里,那也是语言的规则,文本必须要用双引号。
在编辑器里输入了对象,再输了”.“之后,编辑器是会立即列出许多选项,这是为了方便快速准确的输入后面的属性或者方法等。
7、运行:程序写出来了,接下来就要执行它,点菜单运行-下拉出来的右三角,或者快捷键F5,具体操作可以看前面的动画。如果没有出什么错误的话,运行完后,你会发现,A1单元格已经出现了hello Excel VBA,你的第一个程序已经成功创建并顺利执行了。
小结
主要介绍了如何建立一个过程、一个过程的基本规则、给单元格赋值。
- ORA-01427问题的分析和解决(r6笔记第51天)
- 从编程实现角度学习 Faster R-CNN(附极简实现)
- Java基础-23(02)总结多线程,线程实现Runnable接口,线程名字获取和设置,线程控制,线程安全,同步线程
- 8 个最好的 Java RESTful 框架
- 【C++基础】C++11 lambda 表达式解析
- 大量redo生成的问题原因及改进(r6笔记第50天)
- Java基础-22总结登录注册IO版,数据操作流,内存操作流,打印流,标准输入输出流,
- YOLO,一种简易快捷的目标检测算法
- Java基础-22总结转换流,随机访问流,合并流,序列化流,Properties
- openshift镜像构建
- 关于数据库无法登录的问题反思(r6笔记第49天)
- SQL中distinct的用法
- 数据结构是哈希表(hashTable)(一)
- 关于奇怪的并行进程分析(三)(r6笔记第47天)
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- 基于UVM的UART验证环境
- 潘石屹用Python解决100个问题 | 打印菱形
- Android:源码解析 Dialog的窗口机制
- Java|获取图片rgb值
- (数据科学学习手札93)利用geopandas与PostGIS进行交互
- 设计模式(三):旅行的角度理解抽象工厂模式
- 机器学习中的优化算法!
- 【进阶篇】Python+Go——带大家一起另寻途径提高计算性能
- 爬取豆瓣高分电影。
- 快速带你上手Hyperledger Fabric环境搭建+开发测试
- 尝鲜使用微众银行WeCross实现基于哈希时间锁定的跨链转账
- Flutter 富文本第三方库 rich_text_widget
- 程序员的数学:线性代数之可视化
- 基于七牛SDK构建的Vue单页图片管理应用
- [Electron]仿写一个课堂随机点名小项目