阅文时长 | 5.21分钟 字数统计 | 1823字符
『Office·Word高级·VBA基础概念语法』
编写人 | SCscHero 编写时间 | Monday, June 29, 2020
文章类型 | 系列 完成度 | 待完善
座右铭 每一个伟大的事业,都有一个微不足道的开始。Hello World!

常量与变量                                              完成度:80%

基础概念

  • 宏方法定义指令:
Sub [宏方法名称]()
[内容]
End Sub
  • 自定义函数定义指令:
Function [自定义函数名称](参数A,...) As [返回值数据类型]
[自定义函数内容]
End Function

  • 使用Dim关键字声明变量,可以直接指定数据类型,也可在后面赋值中根据值类型自动赋予数据类型。
  • 变量是命名的存储位置,包含在程序执行阶段修改的数据。
  • 变量有变量名,在其范围内唯一。变量名必须以字符或下划线开头,不能超过255个字符,而且中间不能包含句点或类型声明字符。
  • 变量若是对象,不可与方法名重复。
  • 对变量赋值,可以直接赋值,若是对象,需要使用Set关键字进行赋值,并指定类型。

  • 使用关键字Const声明,也可以直接赋值,省略Const。

  • VBA中使用'符号标明注释,之后该行的代码将被编译器忽略

  • 使用模态窗口,MsgBox [变量]指令,F5运行执行方法,即可弹出
  • 使用立即窗口,Debug.Print [变量]指令输出

语法

'声明常量关键字Const
Const pi = 3.1415926
'弹出模态窗口调试
MsgBox pi * 4 '消息框
'声明变量x和y,也可以使用Dim x,y批量声明
Dim x
Dim y
x = 10
y = 20
'声明一个Range数据类型的变量ran
Dim ran As Range
'弹出x+y的值
MsgBox x + y

常见数据类型

  • 变量的特性,用来决定可保存何种数据。数据类型包括:

    • Byte字节
    • Boolean布尔型
    • Integer(%)整数型
    • Long(&)长整型
    • Currency(@)货币型
    • Single(!)单精度浮点型
    • Double(#)双精度浮点型
    • Object对象

常见Q&A

将变量声明为指定数据类型,好处是什么?【答】对象可有成员提示,并可以节省内存空间

条件判断语句                                            完成度:80%

IF

IF语句是许多编程语言中最常用的条件判断语句,语法如下:

  • 单重判定的单行和多行写法
Sub 单重判定的单行和多行写法()
If 99 >= 88 Then MsgBox "恭喜": MsgBox "不恭喜"
If 99 >= 88 Then
MsgBox "恭喜"
MsgBox "不恭喜"
End If
End
End Sub
  • 多重判定(块写法)
Sub 多重条件判断·块写法()
If 99 >= 88 Then
MsgBox "合格"
Else
MsgBox "不合格"
End If
End
End Sub
  • 多条件写法
Sub IF多条件写法()
Dim o As Byte
o = InputBox("请输入你的年龄")
If o >= 60 Then
MsgBox "老年"
ElseIf o > 30 Then
MsgBox "中年"
ElseIf o >= 6 Then
MsgBox "少年"
End If
End
End Sub

Select Case

Select Case语句类似于其他编程语言中的Switch,语法如下:

Sub SelectCase()
Select Case 81
'Is代替81这个值
Case Is >= 80
MsgBox "合格"
Case Else
MsgBox "不合格"
End Select End Sub

循环语句                                                完成度:80%

For

For语法如下:

Sub For()
Dim icount As Integer '设置一个循环变量
'To后面的10表示icount到达10后停止循环;Step后面的2表示步长,即icount变量每次+2进行判断,步长可省略,默认为1
For icount = 1 To 10 Step 2
Next icount
End Sub``` ## For Each For Each常用于遍历集合对象,语法如下:
```basic
Sub ForEach()
'声明一个Range对象(Range对象不清楚的可以去微软官方资料查下,不懂也没关系)
Dim c As Range
For Each c In Selection.Characters
MsgBox c.Text
Next c
End Sub

Do Loop

Do Loop循环,类似于其他编程语言中的Do While,即先执行一次后在判断是否满足退出循环条件,也可以无限循环。Do Loop中有两个关键字来终止循环,Union和While,Union即当满足表达式条件,终止循环;While即当满足表达式条件,继续循环。

Sub doLoop语法()
n = 5
Do
n = n + 1
MsgBox n
Loop Until n = 10
'使用Union指令,当满足表达式条件,退出Do Loop循环
'或使用While指令,当条件成立时,循环
End Sub

如果有帮助到你,请点个赞哦。如果有什么问题,请评论,一起探讨一下。共同进步!如有什么需要与作者联系的,直接私信SCscHero即可。

Office·Word高级·VBA基础概念语法的更多相关文章

  1. Java基础概念语法

    Java基础概念语法 注释 单行注释 //行注释说明 多行注释 /* 多行注释说明 */ 文档注释 /** *@author 程序的作者 *@version 源文件的版本 *@param 方法的参数说 ...

  2. XWPFDocument创建和读取Office Word文档基础篇(一)

    注:有不正确的地方还望大神能够指出,抱拳了 老铁!   参考API:http://poi.apache.org/apidocs/org/apache/poi/xwpf/usermodel/XWPFDo ...

  3. java 使用 POI 操作 XWPFDocumen 创建和读取 Office Word 文档基础篇

    注:有不正确的地方还望大神能够指出,抱拳了 老铁! 参考 API:http://poi.apache.org/apidocs/org/apache/poi/xwpf/usermodel/XWPFDoc ...

  4. VBA基础概念

    一:VBA对象 'VBA对象 'VBA中的对象其实就是我们操作的具有方法.属性的excel中支持的对象 'Excel中的几个常用对象表示方法 '1.工作簿 ' Workbooks 代表工作簿集合,所有 ...

  5. Office WORD如何关闭自动检查语法

    只要把打钩的地方全部去掉即可.

  6. excel的宏与VBA入门(一)——基础概念

    一.概述 "记录宏"其实就是将工作的一系列操作结果录制下来,并命名存储(相当于VB中一个子程序). 宏其实就是VBA写的,但是可以通过录制的方法制作宏,做好的宏你可以查看相应的VB ...

  7. node.js学习(二)--Node.js控制台(REPL)&&Node.js的基础和语法

    1.1.2 Node.js控制台(REPL) Node.js也有自己的虚拟的运行环境:REPL. 我们可以使用它来执行任何的Node.js或者javascript代码.还可以引入模块和使用文件系统. ...

  8. JavaWeb开发技术基础概念回顾篇

    JavaWeb开发技术基础概念回顾篇 第一章 动态网页开发技术概述 1.JSP技术:JSP是Java Server Page的缩写,指的是基于Java服务器端动态网页. 2.JSP的运行原理:当用户第 ...

  9. JavaScript--我发现,原来你是这样的JS(基础概念--躯壳,不妨从中文角度看js)

    介绍 这是红宝书(JavaScript高级程序设计 3版)的读书笔记第二篇(基础概念--躯壳篇),有着部分第三章的知识内容,当然其中还有我个人的理解.红宝书这本书可以说是难啃的,要看完不容易,挺厚的, ...

随机推荐

  1. 【Linux学习笔记0】-虚拟机运行CentOS(VMware12+CentOS)

    目录 一,资源 二,VMware12安装 记录自己学习linux的过程.这将会是一个系列,本文是该系列的第一部分,主要记录虚拟机(VMware12)及对应操作系统(CentOS)的安装过程. 虚拟机( ...

  2. c++ 实现向量去重操作

    去重的时候要考虑线性表或链表是否是有序 1.1.无序线性表 对于向量[1,5,3,7,2,4,7,3], 从头开始扫描vector内的元素, 对于表中r处的元素a[r], 检查数组0至r-1区间内是否 ...

  3. IDEA下 Scala 安装 使用

    Scala 安装 使用 1.安装Scala插件 Setting--->Plugins--->搜索Scala--->install--->安装完成 或者线上安装不成功/网速太慢, ...

  4. WPF-3D圆柱体透视

    3D圆柱体透视效果 总效果 原理: 3D面+面在摄像机方向上的2D投影点的集合 3D面效果: 2D线: 画线时需要注意两个点: 1 在圆柱体上下两个圆之间有两条竖着的棱边代表圆柱体边缘 2 被遮盖的圆 ...

  5. Mysql之读写分离架构-Atlas

    Atlas介绍 1.png ​ Atlas是由 Qihoo 360, Web平台部基础架构团队开发维护的一个基于MySQL协议的数据中间层项目. 它是在mysql-proxy 0.8.2版本的基础上, ...

  6. 鸿蒙手机版JNI实战(JNI开发、SO库生成、SO库使用)

    鸿蒙JNI开发现状 现阶段,不仅鸿蒙JNI相关的开发资料较少,而且Phone相关的JNI开发资料几乎没有,这对于新入行的鸿蒙开发者们来说,非常不友好. 也可能会给Android工程(使用了SO库的工程 ...

  7. Java Case Interview

    什么是面向对象? 面向对象和面向过程的区别: 面向过程更注重每一个步骤以及其顺讯,面向对象更注重哪些对象,他们具有哪些能力 面向过程比较直接,而面向对象更易于复用.扩展和维护 三大特性: 封装:内部细 ...

  8. PAT甲级1100——1155题总结

  9. 6- MySQL条件查询与通配符

    -数据库表中一般包含大量的数据,很少需要查询表中的所有行,通常只会根据特定的需要提取表中的一部分数据.这个时候需要制定查询条件,及过滤条件. -在select语句中,数据库根据where字句中指定的查 ...

  10. Python3解决棋盘覆盖问题的方法示例

    本文实例讲述了Python3解决棋盘覆盖问题的方法.分享给大家供大家参考,具体如下: 问题描述: 在2^k*2^k个方格组成的棋盘中,有一个方格被占用,用下图的4种L型骨牌覆盖所有棋盘上的其余所有方格 ...