zoukankan      html  css  js  c++  java
  • VBA 学习笔记 变量与常量

    学习资料:https://www.yiibai.com/vba/vba_variables.html

    变量和常量命名规则

    • 必须以字母开头
    • 不能包含空格、句点(.)、感叹号(!)或字符@,&,$,#
    • 长度不能超过 255 个字符
    • 不能使用 Visual Basic 保留关键字

    变量

    变量语法

    变量在使用前必须声明即定义变量。

    Dim variable_name As variable_type
    

    数据类型

    在程序编写中,定义一个变量的数据类型,首先是表示它的存储形式。
    其次是通知编译程序使用变量的数据类型,取得优化代码;这样可以提高程序的运行速度,减少内存的占用。

    数字型

    字节整型 Byte

    0 ~ 255
    特点:占用字节数少,同样一个字母 Byte 类型只占用 1 个字节
    参考资料:https://bbs.csdn.net/topics/20409629

    整型 Integer

    -32,768 ~ 32,767
    说明:存储为 16 位(2 个字节)的整数

    长整型 Long

    -2,147,483,648 ~ 2,147,483,648
    说明:存储为 32 位(4 个字节)有符号的数值形式
    丸子:刚刚看到百度 VB 贴吧 2014 年网友在讨论,有一个数字定义为 Long,结果溢出了,所以说为啥 VB 分得这么详细,直接一个数字型不就完了。
    大概还是因为当年存储跟不上,为了节省空间?

    单精度浮点值 Single

    负值:-3.402823E+38 ~ -1.401298E-45
    正值: 1.401298E-45 ~ 3.402823E+38
    说明:占用 32 位(4 个字节)存储空间。
    单精度在一些处理器上比双精度更快而且只占用双精度一半的空间,但是当值很大或很小的时候,它将变得不精确。当你需要小数部分并且对精度的要求不高时,单精度浮点型的变量是有用的。例如,当表示美元和分时,单精度浮点型是有用的。

    双精度浮点值 Double

    负值:-1.79769313486232e+308 ~ -4.94065645841247E-324
    正值: 4.94065645841247E-324 ~ 1.79769313486232e+308
    说明:占用 64 位(8 个字节)的存储空间。
    在一些现代的被优化用来进行高速数学计算的处理器上双精度型实际上比单精度的快。所有超出人类经验的数学函数,如 sin( ),cos( ) ,和 sqrt( )均返回双精度的值。当你需要保持多次反复迭代的计算的精确性时,或在操作值很大的数字时,双精度型是最好的选择。

    货币型 Currency

    -922,337,203,685,477.5808 ~ 922,337,203,685,477.5807
    说明:存储为 64 位(8 个字节)整型的数值形式,然后除以 10,000 给出一个定点数,其小数点左边有 15 位数字,右边有 4 位数字。

    小数型 Decimal

    如果不使用小数,则为+/- 79,228,162,514,264,337,593,543,950,335
    如果使用小数,则为:+/- 7.9228162514264337593543950335
    说明:适用于要求使用大量有效的整数及小数位数并且没有舍入错误的财务计算。Decimal 类型不会消除对舍入的需要,而是将因舍入而导致的错误降到最少。

    非数字型

    固定长度 String

    1 ~ 65,400 个字符

    可变长度 String

    0 到 20 亿字符

    日期 Date

    100 年 1 月 1 日至 9999 年 12 月 31 日

    布尔值 Boolean

    True / False

    Object

    任何嵌入的对象

    Variant (numeric)

    任何大到 double 的数字值

    Variant (text)

    与可变长度的 string 一样。

    示例

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

    常量

    常量语法

    Const <<constant_name>> As <<constant_type>> = <<constant_value>>
    

    示例

    Private Sub ConstantDemo()
    
       Const MyInteger As Integer = 720
       Const myDate As Date = #10/21/2000#
       Const myDay As String = "Sunday"
    
       MsgBox ("整数值是:" & MyInteger & Chr(10) & "myDate的值是:" & myDate & Chr(10) & "myDay 的值是:" & myDay)
    
    End Sub
    

    丸子笔记

    Private Sub

    私有声明过程,大概相当于 Lua 中的 local function 或者 local 变量吧!

    Chr

    CHR 函数,传入一个数值,返回这个数值对应的 ascii 码字符,比如 chr(65)输出的是大写的 A
    chr(13) 表示换行
    chr(10) 表示回车

  • 相关阅读:
    tomcat的systemctl启动脚本
    vmware中虚拟化的问题
    zabbix-3.4.14源码安装
    tomcat启动后8005端口未被占用
    Centos7初始化脚本
    CentOS7.3上如何安装Apache/2.4.34
    js完整教程一 : 基本概念和数组操作
    浅入浅出Lambda表达式
    这些基础却重要的面向对象概念,你还记得多少
    MVC5+EF6 入门完整教程11--细说MVC中仓储模式的应用
  • 原文地址:https://www.cnblogs.com/lisaisacat/p/12303183.html
Copyright © 2011-2022 走看看