Excel VBA 变量,数据类型&常量

2023-09-14 15:03:15

几乎所有计算机程序中都使用变量,VBA 也不例外。 在过程开始时声明变量是一个好习惯。 这不是必需的,但有助于识别内容的性质(文本,​​数据,数字等)

在本教程中,您将学习-

一、VBA变量

变量是存储在计算机内存或存储系统中的特定值。 以后,您可以在代码中使用该值并执行。 计算机将从系统中获取该值并显示在输出中。 必须为每个变量指定一个名称。

要在 VBA 中命名变量,您需要遵循以下规则。

  • 不得超过 255 个字符
  • 不允许有空格
  • 它不能以数字开头
  • 期间不允许

这是 VBA 中变量的有效名称和无效名称的一些示例。

​编辑有效名称 | ​编辑无效名称 | | 我的手表 | My.Watch | | 新车 1 | 1_NewCar(不以数字开头) | | 员工 ID | 员工编号(不允许空格) |

在 VBA 中,我们需要在使用变量之前声明变量,方法是分配名称和数据类型。

在 VBA 中,变量是隐式或显式声明的。

  • Implicitly: Below is an example of a variable declared Implicitly.
    • 标签= Teacher99
    • 音量= 4
  • 显式:以下是显式声明的变量的示例。 您可以在语法中使用“昏暗”关键字
    • 昏暗 Num 为整数
    • 昏暗密码为字符串

VBA 变量与其他编程语言没有区别。 要在 VBA 中声明变量,请使用关键字“ Dim”。

VBA 变量的语法

要在 VBA 中声明变量,请键入 Dim,然后输入名称:

Sub Exercise ()
        Dim <name>
End Sub复制ErrorOK!

在执行变量之前,我们必须在 Excel 中记录一个宏。 要记录宏,请执行以下操作-

步骤 1):记录宏 1

步骤 2):停止宏 1

步骤 3):打开宏编辑器,在 Macro1 中输入变量代码

步骤 4):执行宏 1 的代码

示例,对于 VBA 变量

Sub Macro1()
    Dim Num As Integer
    Num = 99
    MsgBox " Guru " & Num
End Sub
复制ErrorOK!

运行此代码时,您将在工作表中获得以下输出。

VBA Data Types, Variables & Constant

二、Execl VBA 类型

计算机无法区分数字(1,2,3 ..)和字符串(a,b,c,..)。 为了进行区分,我们使用数据类型。

VBA 数据类型可以分为两种类型

  • 数值数据类型

类型 | 储存空间 | 值范围 | | 字节 | 1 个字节 | 0 至 255 | | 整数 | 2 字节 | -32,768 至 32,767 | | Long | 4 字节 | -2,147,483,648 至 2,147,483,648 | | 单 | 4 bytes | -3.402823E + 38 至-1.401298E-45(负值)1.401298E-45 至 3.402823E + 38(正值)。 | | 双 | 8 字节 | -1.79769313486232e + 308 至-4.94065645841247E-324 为负值 4.94065645841247E-324 至 1.79769313486232e + 308 为正值。 | | 货币 | 8 bytes | -922,337,203,685,477.5808 至 922,337,203,685,477.5807 | | 小数 | 12 字节 | +/- 79,228,162,514,264,337,593,543,950,335(如果不使用小数点)+/- 7.9228162514264337593543950335(小数点后 28 位) |

  • 非数值数据类型

数据类型 | 使用的字节数 | 值范围 | | 字符串(固定长度) | 字符串长度 | 1 至 65,400 个字符 | | 字符串(可变长度) | 长度+ 10 个字节 | 0 至 20 亿个字符 | | 布尔型 | 2 bytes | 对或错 | | 日期 | 8 bytes | 100 年 1 月 1 日至 9999 年 12 月 31 日 | | 目的 | 4 bytes | 任何嵌入式对象 | | 变体(数字) | 16 字节 | 任何与 Double 一样大的值 | | 变体(文字) | 长度+ 22 个字节 | 与可变长度字符串相同 |

在 VBA 中,如果未指定数据类型,它将自动将变量声明为 Variant。

让我们看一个有关如何在 VBA 中声明变量的示例。 在此示例中,我们将声明三种类型的变量字符串,即连接日期和货币。

步骤 1)就像在上一个教程中一样,我们将在我们的 Excel 工作表中插入 commandButton1。

VBA Data Types, Variables & Constant

步骤 2)在下一步中,右键单击按钮,然后选择查看代码。 它将打开代码窗口,如下所示。

VBA Data Types, Variables & Constant

步骤 3)在此步骤中,

  • 通过单击保存按钮 

    VBA Data Types, Variables & Constant

     保存文件
  • 然后在同一窗口中单击 Excel 图标 

    VBA Data Types, Variables & Constant

     以返回 Excel 工作表。
  • 您可以看到设计模式以绿色突出显示为“打开”

VBA Data Types, Variables & Constant

步骤 4)在单击命令按钮之前,关闭设计模式

VBA Data Types, Variables & Constant

步骤 5)关闭设计模式后,将单击 commandButton1。 它将显示以下变量作为我们在代码中声明的范围的输出。

  • Name
  • 加盟日期
  • 货币收入

VBA Data Types, Variables & Constant

​​​​​​​三、VBA中的常量

常量就像变量一样,但是您不能对其进行修改。 要在 VBA 中声明常量,请使用关键字 Const 。

常数有两种类型,

  • 应用程序提供的内置或内置的。
  • 符号或用户定义

您可以将范围默认指定为私有公共。 例如,

年公共公休日= 365

私人监工工作日= 250

下载包含以上代码的 Excel

摘要

  • 变量是存储在计算机内存或存储系统中的特定值。
  • 您可以在语法中使用“ Dim”关键字来显式声明变量
  • VBA 数据类型可以分为两种类型
    • 数值数据类型
    • 非数值数据类型
  • 在 VBA 中,如果未指定数据类型。 它将自动将变量声明为 Variant
  • 常量就像变量一样,但是您不能对其进行修改。 要在 VBA 中声明常量,请使用关键字 Const 。
更多推荐

goaccess 日志分析 nginx

分析命令:goaccess-a-d-f/mnt/winshare/access-2023070112.log-pgoaccess.conf-o/mydata/nginx/html/2023070112_new.html分析日志时的参数goaccess使用参数详解-a开启UserAgent列表。开启后会降低解析速度-c在

高成本获客时代,企业如何通过营销自动化实现突围?

在数字化时代,随着市场竞争的不断升级,企业在获客方面面临了前所未有的挑战。不论是B端或C端的市场和运营部门纷纷寻求可降低获客成本的新运营路径,将有限的预算花在刀刃上。企业迫切需要寻求更加智能和高效的方式来吸引、转化和留住潜在客户,而营销自动化正是解决这些问题的利器。今天运营坛将和大家探讨获客和培育这两大核心。一、高成本

用低代码开发工具高效构建企业门户

企业信息门户EIP是指将各种应用系统、数据资源和互联网资源统一集中,根据每个用户使用特点和角色的不同,形成个性化的应用界面,并通过对事件和消息的处理、传输把用户有机地联系在一起。企业随着业务的发展,运作的复杂度也在不断加大,再加上各部门的业务量和业务的复杂度都在不断增加,可能已经建设了ERP、OA、考勤、合同、BPM、

阿里测开面试大全(一)附答案完整版

万字长文,建议收藏1什么是POM,为什么要使用它?POM是PageObjectModel的简称,它是一种设计思想,而不是框架。大概的意思是,把一个一个页面,当做一个对象,页面的元素和元素之间操作方法就是页面对象的属性和行为,所以自然而然就用了类的思想来组织我们的页面。一般一个页面写一个类文件,这个类文件包含该页面的元素

【Git】Git 变基(rebase)以及rebase和merge之间的区别

Git变基1.变基—rebase在Git中整合来自不同分支的修改主要有两种方法:merge以及rebase。在前面的文章中已经介绍了merge,这里我们来学习另一个指令rebase。变基的基本操作回顾之前在分支的合并中的一个例子,在该例子中,我们可以看到开发任务分叉到两个不同分支,又各自提交了更新。之前介绍过,整合分支

行为树的基本概念和C++库

一说明行为树是计算机科学、机器人技术、控制系统和视频游戏中使用的计划执行的数学模型。它们以模块化方式描述一组有限任务之间的切换。他们的优势来自于他们能够创建由简单任务组成的非常复杂的任务,而不用担心简单任务是如何实现的。行为树与分层状​​态机有一些相似之处关键区别在于行为的主要构建块是任务而不是状态。它易于人类理解,使

服务器中了勒索病毒怎么办?勒索病毒解密,数据恢复

勒索病毒是一种比较常见的电脑病毒,它们给企业的生产经营和发展带来了很大的影响。可是绝大多数企业在这方面并没有做合理的预案,这也导致当安全运维人员或者企业主发现中了勒索病毒以后手足无措。那云天数据恢复中心就用这篇文章来告诉大家当服务器中了勒索病毒怎么办。一,隔离受感染的电脑或者系统为了生产经营方便,很多用户的服务器或者电

七夕特别篇 | 浪漫的Bug

文章目录前言一、迷失的爱情漩涡(多线程中的错误同步)1.1Bug背景1.2Bug分析1.3Bug解决二、心形积分之恋(心形面积计算中的数值积分误差)1.1Bug背景1.1.1背景1.1.2数学模型1.2Bug分析1.2.1初始代码1.2.2代码工作流程图1.2.3代码分析1.3Bug解决三、总结Bug1:多线程环境中的

【已解决】matrix contains invalid numeric entries,记录bug修改

文章目录摘要原因解决办法图像分类网络AlexNetVGGNetGooLeNet系列ResNetDenseNetSwinTransformerMAECoAtNetConvNeXtV1、V2MobileNet系列MPViTVITSWAEfficientNet系列MOBILEVITEdgeViTsMixConvRepLKNe

绘图系统四:定制绘图风格

文章目录创建控件绘图风格可定制绘图风格的绘图系统代码组织📈一三维绘图系统📈二多图绘制系统📈三坐标轴定制源码地址Python打造动态绘图系统创建控件尽管从matplotlib的角度来说,绘图风格也算是图像类型的一部分,但诸如点线字体标题等内容太过复杂,为了减轻DrawType的负担,所以新建一个组件。有了DrawT

R语言RSTAN MCMC:NUTS采样算法用LASSO 构建贝叶斯线性回归模型分析职业声望数据...

全文链接:http://tecdat.cn/?p=24456如果你正在进行统计分析:想要加一些先验信息,最终你想要的是预测。所以你决定使用贝叶斯(点击文末“阅读原文”获取完整代码数据)。相关视频但是,你没有共轭先验。你可能会花费很长时间编写Metropolis-Hastings代码,优化接受率和提议分布,或者你可以使用

热文推荐