变量是一个指定的内存位置,用于保存脚本执行过程中可以更改的值。以下是命名变量的基本规则。

  • 变量名称必须使用一个字母作为第一个字符。
  • 变量名称不能使用空格,句点(.),感叹号(!)或字符@&$#
  • 变量名称的长度不能超过255个字符。
  • 不能使用Visual Basic保留关键字作为变量名称。

语法

在VBA中,变量需要在使用它们之前声明。

Dim <<variable_name>> As <<variable_type>>
Dim <<variable_name>> As <<variable_type>>

数据类型

有许多VBA数据类型,可以分为两大类,即数字和非数字数据类型。

1. 数字数据类型

下表显示数字数据类型和允许的值范围。

1. 数字数据类型

下表显示数字数据类型和允许的值范围。

编号 数字类型 范围值
1 Byte 0 ~ 255
2 Integer -32,768 ~ 32,767
3 Long -2,147,483,648 ~ 2,147,483,648
4 Single 负值:-3.402823E+38 ~ -1.401298E-45,正值: 1.401298E-45 ~ 3.402823E+38
5 Double 负值:-1.79769313486232e+308 ~ -4.94065645841247E-324,正值: 4.94065645841247E-324 ~ 1.79769313486232e+308
6 Currency -922,337,203,685,477.5808 ~ 922,337,203,685,477.5807
7 Decimal 如果不使用小数,则为+/- 79,228,162,514,264,337,593,543,950,335;如果使用小数,则为:+/- 7.9228162514264337593543950335

2. 非数字数据类型

下表显示了非数字数据类型和允许的值范围。

编号 数字类型 范围值
1 固定长度:String 1 ~ 65,400个字符
2 可变长度:String 0到20亿字符
3 Date 100年1月1日至9999年12月31日
4 Boolean True / False
5 Object 任何嵌入的对象
6 Variant (numeric) 任何大到double的数字值
7 Variant (text) 与可变长度的string一样。

示例

在这个示例中,创建一个按钮并命名为“VariablesDemo” 来演示变量的使用。

参考实现的代码如下:

Private Sub VariablesDemo()
Dim password As String password = "" Dim num As Integer
num = Dim BirthDay As Date BirthDay = DateValue("1998-10-11") MsgBox ("设置的密码是:" & password & Chr() & "num的值是:" & num & Chr() & "Birthday的值是:" & BirthDay)

执行上面示例代码,得到以下结果

VBA变量(七)的更多相关文章

  1. excel的宏与VBA入门(二)——数据类型与变量

    一.属性与方法 1.属性 上面单击对象,下面即显示对应的属性: 2.方法 双击左上的对象,即可看到相应的方法: 二.数据类型 到 Boolean True 或 False , 到 , ,,, 到 ,, ...

  2. 跟我一起写Makefile--- 变量(嵌套变量+追加变量+overrid+多行变量+环境变量+目标变量+模式变量)

    目录(?)[-] 使用变量 一变量的基础 二变量中的变量 三变量高级用法 四追加变量值 五override 指示符 六多行变量 七环境变量 八目标变量 九模式变量 使用变量 ———— 在Makefil ...

  3. Excel VBA基础教程

    https://www.w3cschool.cn/excelvba/excelvba-basics.html Excel VBA语言基础 VBA语言的基础认识 详解VBA编程是什么 excel处理录制 ...

  4. GoSDK的安装及环境变量配置 入门详解 - 精简归纳

    GoSDK的安装及环境变量配置 入门详解 - 精简归纳 JERRY_Z. ~ 2020 / 10 / 29 转载请注明出处!️ 目录 GoSDK的安装及环境变量配置 入门详解 - 精简归纳 一.进入G ...

  5. 在Excel VBA中写SQL,是一种什么体验

    每每提到Excel办公自动化,我们脑海里能想到的就是公式.数据透视表.宏.VBA,这也是我们大部分人数据分析的进阶之路.当我们对于常用VBA技巧已经相当熟练后,往往会有一种"我的VBA知识够 ...

  6. delphi 换行操作 Word

    delphi 换行操作 我将我的商用<旅行社管理系统>的 发团通知 部分奉献给您,望对您有所帮助. procedure TFrmMain.N327Click(Sender: TObject ...

  7. Delphi中编辑word

      其他(28)   //启动Word   try     wordapplication1.connect;   except     messagedlg('word may not be ins ...

  8. Delphi读取Word

    Delphi读取Word现在关于往Word中写入数据的方法比较多,现在专门开个贴子,希望大家把自己读取Word内容的心得体会说一下,包括读取word文档中,有几个段落,如何读取第几个段落,读取有拼音的 ...

  9. 用Delphi进行word开发

    使用以CreateOleObjects方式调用Word 实际上还是Ole,但是这种方式能够真正做到完全控制Word文件,能够使用Word的所有属性,包括自己编写的VBA宏代码.------------ ...

随机推荐

  1. C#-片段:外侧代码

    ylbtech-C#-片段:外侧代码 1.返回顶部 ·#if #if true #endif ·#region #region MyRegion #endregion ·namespace names ...

  2. SQL-W3School-函数:SQL MID() 函数

    ylbtech-SQL-W3School-函数:SQL MID() 函数 1.返回顶部 1. MID() 函数 MID 函数用于从文本字段中提取字符. SQL MID() 语法 SELECT MID( ...

  3. VMware vSphere Client中启动虚拟机提示No boot filename received/Operating System not found解决方法

    昨天下载安装 .NET Framework 3.5 SP1解决了VMware vSphere Client安装问题后,今天需要远程连接服务器搭建一台虚拟机. 根据指引步骤进行下一步.下一步的操作完成后 ...

  4. 010-centos 端口问题

    1.nmap 安装 yum install nmap    #输入y安装 使用 nmap localhost    #查看主机当前开放的端口      nmap -p 1024-65535 local ...

  5. 在Vue中用富文本编辑器(可以ctrl+c粘贴)

    我司需要做一个需求,就是使用富文本编辑器时,不要以上传附件的形式上传图片,而是以复制粘贴的形式上传图片. 在网上找了一下,有一个插件支持这个功能. WordPaster 安装方式如下: 直接使用Wor ...

  6. Apache2.4的三种模式

    prefork 多进程模式 一个主进程,负责生成多个子进程,也称工作进程,进程之间独立,每个进程之间只能有一个线程,优点是稳定,缺点是内存占用大,每个进程响应一个用户请求. worker 多线程模式 ...

  7. 第一次linux下安装nginx记录

    CentOS 7 安装Nginx 并配置自动启动 1.下载Nginx安装包---->地址:http://nginx.org/en/download.html 2.上传安装包到服务期 : rz 命 ...

  8. 欧姆龙 EntherNet/IP(CIP报文格式)

    Enthip/IP_ CIP报文格式 测试Demo在文章末尾 注册请求帧: 0x65 0x00   注册请求命令 2byte 0x04,0x00   header长度2byte   < 封装头& ...

  9. windows下进程与线程

    windows下进程与线程 Windows是一个单用户多任务的操作系统,同一时间可有多个进程在执行.进程是应用程序的运行实例,可以理解为应用程序的一次动态执行:而线程是CPU调度的单位,是进程的一个执 ...

  10. TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option

    先解决他 详细不详解 在初始化 加上 --explicit_defaults_for_timestamp=true 即可