阅文时长 | 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. irace package -- 参数调优神器

    目录 1. irace 是什么 2. 安装 irace 3. irace 的运行机制 4. irace 的配置环境 4.1. parameters 4.2. target algorithm runn ...

  2. PReact10.5.13源码理解

    React源码看过几次,每次都没有坚持下来,索性学习一下PReact部分,网上讲解源码的不少,但是基本已经过时,所以自己来梳理下 render.js部分 import { EMPTY_OBJ, EMP ...

  3. Python fire库使用

    1.前要fire是python中用于生成命令行界面(Command Line Interfaces, CLIs)的工具 不需要做任何额外的工作,只需要从主模块中调用fire.Fire() 它会自动将你 ...

  4. elasticsearch之Java调用本地代码

    虽然Java虚拟机为开发人员屏蔽了底层的实现细节,使得开发人员不用考虑底层操作系统的差异性.不过在某些应用程序中,还是免不了要直接与底层操作系统上的原生代码进行交互.今天我们就来看一下Java对本地调 ...

  5. [Fundamental of Power Electronics]-PART II-8. 变换器传递函数-8.1 Bode图回顾

    8.0 序 工程设计过程主要包括以下几个过程: 1.定义规格与其他设计目标 2.提出一个电路.这是一个创造性的过程,需要利用工程师的实际见识和经验. 3.对电路进行建模.变换器的功率级建模方法已经在第 ...

  6. 无线网络的应用之aircrack-ng

    在kalilinux的aircracke-ng中.在这儿描述自己所遇到的问题并给予写blog 在使用之前,需要确定是否有对应的支持无线网卡监听的网卡,在虚拟机中需要先将网卡的驱动重定向到虚拟机内 在终 ...

  7. 深入剖析共识性算法 Raft

    一. Raft简介 1.1 Raft简介 Raft 是一种为了管理日志复制的分布式一致性算法.Raft 出现之前,Paxos 一直是分布式一致性算法的标准.Paxos 难以理解,更难以实现.Raft ...

  8. gdb常用命令(转)

    pwn常常会用到gdb,看到一篇不错的文章,记录了很多命令:https://www.jianshu.com/p/c3e5f5972b21 gdb 基础调试命令 s step,si步入 n 执行下一条指 ...

  9. [ERROR]: gitstatus failed to initialize.

    1 问题描述 Manjaro升级后,zsh的主题p10k出现的问题. Your git prompt may disappear or become slow. Run the following c ...

  10. Go 类型转换与类型判断

    目录 Go 类型转换与类型判断 1.类型转化 2.类型判断 Go 类型转换与类型判断 1.类型转化 T(a) : T 是目标类型 a 是源变量 package main import "fm ...