首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

在VBA中,为什么比较两个双精度值比比较两个长整型快

在VBA中,比较两个双精度值比比较两个长整型快的原因是因为双精度值是浮点数,而长整型是整数。

浮点数的比较涉及到浮点数的精度问题,需要进行更复杂的计算。而整数的比较只需要进行简单的数值比较,不涉及精度问题,因此速度更快。

在VBA中,双精度值的数据类型是Double,长整型的数据类型是Long。当比较两个双精度值时,VBA会直接比较它们的数值大小。而比较两个长整型时,VBA也会直接比较它们的数值大小。

以下是VBA中比较两个双精度值和两个长整型的示例代码:

代码语言:txt
复制
Dim doubleValue1 As Double
Dim doubleValue2 As Double
Dim longValue1 As Long
Dim longValue2 As Long

doubleValue1 = 3.14
doubleValue2 = 2.71
longValue1 = 10
longValue2 = 5

' 比较两个双精度值
If doubleValue1 > doubleValue2 Then
    MsgBox "doubleValue1 大于 doubleValue2"
ElseIf doubleValue1 < doubleValue2 Then
    MsgBox "doubleValue1 小于 doubleValue2"
Else
    MsgBox "doubleValue1 等于 doubleValue2"
End If

' 比较两个长整型
If longValue1 > longValue2 Then
    MsgBox "longValue1 大于 longValue2"
ElseIf longValue1 < longValue2 Then
    MsgBox "longValue1 小于 longValue2"
Else
    MsgBox "longValue1 等于 longValue2"
End If

在实际开发中,如果只需要比较整数值大小,建议使用长整型数据类型,可以提高比较的效率。如果需要进行浮点数的比较,可以使用双精度值数据类型。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

VBA的数据类型

1、字符串(String) 字符串是一个字符序列,类似于EXCEL中的文本,在VBA中字符串是包括在双引号内的(英文双引号),如果字符串双引号内长度为零,即“”就是空字符串。...2、整型(Integer) 整型数据的范围是-32768~32768之间的整数,优点是占用内存少,运算速度快,数值如果超出范围就需要用long长整型数据。...3、长整型(Long) 用来表示-2147483648 - 2147483647之间的整数。...4、单精度浮点数(Single)和双精度浮点数(Double) 一般用来表示带有小数部分的实数,一般用single,由于范围是用科学计数法表示的,这里就不列了。...如果范围溢出就用双精度浮点型,双精度浮点型的范围更大一些。 5、货币型(Currency) 货币型数据类型在货币计算与定点计算中很有用,因为对精度要求比较高。

3.3K50

Excel之VBA简单宏编程

文章目录 Excel之VBA简单宏编程 1、准备工作 2、VBA编程 2.1模块声明 2.2变量声明及赋值 2.3if-else结构 2.4循环结构 2.5比较运算符 2.6注释 3、常用功能 3.1...编辑 点击visual basic进入 在VBAProject上右键->插入->模块 出现一个编辑文件如下图 然后就可以在这里写入vba代码。...直接等号赋值 数据类型 定义符号 备注 字符串 String 整型数字 Integer -32768~32767 长整型数字 Long -2147483648~2147483647 单精度浮点型数字...Single 精度为6 双精度浮点型数字 Double 精度为14 日期型 Date 布尔型 Boolean 变体型 Variant 万用的类型,尽量避免使用 对象型 Object 没有深究 枚举型...··   ······ Loop For i = 0 To 100 Step 1   ······ Next i 跳出for循环可以用 Exit For 2.5比较运算符

3.5K31
  • Java入门系列-05-数据类型和类型转换

    int 4字节32位 -2147483648)~+2147483647 整型 存下中国人口的数量没有问题,但是存下地球所有人的数量就不够了 long 8字节64位 -2^63 ~ + 2^63-1 长整型...存下地球的人数绰绰有余 float 4字节32位 单精度浮点数 存储小数 double 8字节64位 双精度浮点数 敲一敲: public class DemoType { public static...f 作为后缀,这是因为任何小数都会被认为是 double 在日常使用中建议使用 double 类型防止精度的丢失 非数值型 字符型 char 只能存储一个字符,值需要用一对单引号引起来,且单引号中只能放一个字符...System.out.println("isequal:"+isbig); boolean flag=false; System.out.println("flag:"+flag); boolean 类型的变量只能存储两个值...true 或 false 还可以将逻辑比较后的结果(也是 true 或 false)存入 数据类型转换 隐式类型转换 二花一个月前称的体重为97.5斤,现在比一个月前刚好增加2斤,二花现在是多少斤?

    58900

    Java基础入门篇(四)——Java变量数据类型和基本数据类型

    整型类型分为4种不同类型: 字节型(byte)、短整型(short)、整型(int)、长整型(long),这4种类型所占的存储空间大小和取值范围如下所示: ?...可分为单精度浮点型(float)和双精度浮点型(double)。double所用占用空间比float多,也比较精确。这两个类型所占空间和取值范围如下所示: ?...在取值范围中E表示以10为底的指数。e后面的+号和-号表示正指数和负指数,例如5.12e+2表示5.12乘10的2次方。 在一个float类型的变量赋值需要注意,所赋值的后面加F或f。...整型类型4种不同类型,分别有字节型(byte)、短整型(short)、整型(int)、长整型(long),这4种类型所占用空间和取值范围,注意一个长整型(long),变量赋值后面需要加个L。...浮点型分为单精度浮点型(float)和双精度浮点型(double),这两种类型的所占空间和取值范围,需要注意一个单精度浮点型(float)后面需要加个f。字符型是存储一个单一字符,用char表示。

    49020

    Java中printf的用法总结

    ④m.n:m指域宽,即对应的输出项在输出设备上所占的字符数。N指精度。用于说明输出的实型数的小数位数。为指定n时,隐含的精度为n=6位。 ⑤l或h:l对整型指long型,对实型指double型。...对长整型可以用"%lu"格式输出。同样也可以指定字段宽度用“%mu”格式输出。 //不可使用 //在实践中没有运行出来。 ⑤c格式:输出一个字符。 ⑥s格式:用来输出一个串。...System.out.println("单精度浮点型:"+d);/*单精度浮点型占32位存储空间,在一些 处理器上比双精度更快而且只占用双精度一般的空间,但是当值很大或很小的时候,它...将变得不准确*/ System.out.println("双精度型:"+a);/*双精度型占64位存储空间,在一些现代化的 被优化用来进行高速数学计算的处理器上比单精度的快...,当需要保持多次反复迭代计算 的准确性时,或在操作值很大的数字时,双精度是最好的选择。

    1.2K10

    C语言进阶——数据在内存中的存储

    整型                        %d                  4字节 long                      长整型                    %ld...单精度浮点型          %f                  4字节double                     双精度浮点型          %lf                 ...signed char 有符号 char unsigned char 无符号 char short short比 char 大1字节,因此所表示范围值会比 char 大很多,最大值同样是无符号表示...单精度浮点型(float)有32比特位,规则在上面,而双精度浮点型(double)有64位,规则跟32位几乎一致,不过在空间分配和指数E的中间值上略有差异 ️取出  存入很复杂,取出也很复杂,光是取出的情况就有三种...: 1.指数E非全0或非全1时,常规取出,如果存的时候加了中间值127(或1023)取的时候就要减去中间值127(或1023),这是比较常见的取出形式。

    19420

    Python黑帽编程2.2 数值类型

    Python黑帽编程2.2 数值类型 数值类型,说白了就是处理各种各样的数字,Python中的数值类型包括整型、长整型、布尔、双精度浮点、十进制浮点和复数,这些类型在很多方面与传统的C类型有很大的区别...长整型和标准整型,目前已经基本统一,当数学运算遇到整型异常的情况,在Python2.2以后的版本,会自动转换为长整型。例如: ?...图6 2.2.3 双精度浮点型 Python里的浮点型数字都是双精度,类似C语言的double类型。可以用十进制或者科学计数法表示。下面我们看一些典型的浮点型数字。...图7 2.2.4 复数 在Python中,有关复数的概念如下: l 虚数不能单独存在,它们总是和一个值为0.0的实数部分一起来构成一个复数。 l 复数由实数部分和虚数部分组成。...双精度浮点型使用的是底和指数的表示方法,在小数表示上精度有限,会导致计算不准确,decimal采用十进制表示方法,看上去可以表示任意精度。 下面我们看一下十进制浮点的例子。

    2K90

    C语言常用的知识没多少之C语言的数据类型及变量与常量

    这也能推出为什么买的手机或电脑的各个存储空间比实际少的原因了,原因是厂家是按1000为换算单位,而电脑或手机显示的空间是按1024进行换算的,比1000要少。...约-1.7×10-308~1.7×10308 长双精度实型(long double)16字节 约-1.2×10-4932~1.2×104932 没有严格要求的情况下,实型也包含整型...其中常用的有双精度实型(double),单精度实型(float)不是太常用。但是之前所说的整型(int)不能被双精度实型(double)和单精度实型(float)代替掉。...在计算机中经常会采取前面的方法及取相应的位数,这样导致与实际小数的误差很大。在使用中因为会将整数和小数搞混,整数虽然不会出现误差,但小数误差比较大。...所以也不能用双精度实型(double)代替整型(int)。

    1K20

    C++学习笔记 基本数据类型

    2字节 char32_t Unicode字符类型 4字节 short 短整型 2字节 int 整型 2字节 long 长整型 4字节 long long 长整型 8字节 wchar_t、char16...浮点型 浮点型数据类型和它们的大小总结在下表: 数据类型 含义 最小单位 float 单精度浮点类型 6位有效数字 double 双精度类型 10位有效数字 long double 扩展精度类型 10位有效数字...带符号的类型 在前面介绍的整型类型中,除了布尔类型和扩展的字符类型之外,其他整型都可以是有符号的(signed)和无符号的(unsigned),它们的区别在于取值范围。...在进行运算的时候,有符号数会被转换为无符号数进行运算,在这个过程中运算结果可能意外改变。所以为了稳妥起见,不要将有符号数和无符号数混合进行计算。 字面量 直接写在程序中的值称为字面量。...后缀 含义 例子 f或F 单精度浮点数 0.4F l或L long double类型 10.00L,最好使用大写L 无后缀 双精度浮点数 3.14 字符和字符串字面值 由单引号包括的单个字符是字符字面量

    78880

    c语言入门指南2(注释,变量,数据类型,标识符,宏定义常量)

    ​数据在c语言编程过程中,大多数程序在产生输出之前都需要对数据进行运算。这些数据需要临时存储在内存之中(当计算机需要记忆这些数值时就会在内存中进行存储),数据的类型可以大体的分为两类,整型,浮点型。...浮点型的类型声明有float(单精度浮点型),double(双精度浮点型)。...宏定义的常量常量往往都会具有独特性,比如π的值不会是3.15,我们可以用宏来定义这些常量。对比下面两个函数。...c语言是区分大小写的,也就是说,以下C语言的标识符:OK,Ok,oK,ok都是合法的,而且这四个变量都可以赋予不同的值,但是这样做的缺点也很明显,就是不容易分辨这些变量在程序中做何意义。...3)为什么用的是double类型而不是float类型。double类型和float类型相比较他的精度更高,但是float的优点在于float占用的内存更小(在后续会提到)。

    9710

    大数据之脚踏实地学12--Scala数据类型与运算符

    快动动手指! 前言 在春节期间,欢天喜地的办理了自己的婚礼,导致春节前后的一段时间都比较忙碌,进而使自己原创文章的脚步放慢了很多。许多朋友在微信公众号后台留言,表示想看大数据相关的文章。...Long 长整型,区间为 -9223372036854775808 到 9223372036854775807 Float 单精度浮点型,默认保留7位有效数字 Double 双精度浮点型 Char 字符型...必须在整数的末尾加上字母l或L,否则溢出 myLong: Long = 12345678910 scala> val myDouble : Double = 3.14159 // 对于一个实数,默认为双精度浮点型...比较运算符 通过比较运算符,可以得到Boolean类型的值。...= 判断运算符左侧的值是否不等于右侧的值 逻辑运算符 借助于逻辑运算符,将多个比较运算符进行连接。

    79920

    Microsoft Office Access

    数据库做了很多地扩充,如,在Access的环境中,可以在查询中使用自己编写的VBA函数,Access的窗体、报表、宏和模块是作为一种特殊数据存储在JET数据库文件(.mdb)中,只有在Access环境中才能使用这些对象...动态库调用无符号整数 常常有这样一种情况,要从外部动态链接库调用的过程中返回一个两个字节长的无符号整型数。然而Access Basic不支持这种数据类型。...转换无符号整型数的算术方法如下:第一个函数读进一个无符号整型数同时返回一个已经转变位长整型的值。第二个函数读入一个长整型值,然后返回一个转变成无符号整型的值。...第二个函数读入一个长整型值,然后返回一个已经转换的无符号整型值。第二个函数中使用了提示框的语句是为了防止当传递到函数的值大于64KB时会出现溢出信息。...用整形数进行数学运算 即使Microsoft Access 会使用一个联合处理器来处理浮点型算术,整型数算术也总是要快一些。当你的计算不含有小数,尽量使用整型或长整型而不是变量或双整型。

    4.3K130

    Java_数据类型_03

    在变量声明前加final关键字,即表示常量 常量的表示法 整型常量 分为字节型(byte),短整型(short),整型(int),长整型(long),这四种类型的整型常量都可以使用八进制,十进制和十六进制表示...,表示方法都用小数和指数两种格式,单精度小数表示用F或者f后缀表示,双精度小数使用d或者D表示,当数值较大时,使用指数形式表示更好,如3.12E10,3.23e7 提示:使用指数形式的时候,E 或者e...布尔常量 布尔常量在java 中只有true和false 两个值,记住,不能转换成任何其他的类型,只能赋值给boolean 数据类型或者布尔表达式 变量 程序运行中值可变的量,它用来记录程序运行中间结果或保存数据...变量分类 局部变量:在整个方法中声明,其作用域是在代码段中....int 32 0 -2147483648~2147483647 长整型 long 64 0 -263~263-1 单精度浮点数 float 32 0.0F -3.40232347e38~-3.40232347e38

    65200

    c语言大一基本理解笔记1

    *实型(浮点型):单精度型(float)和双精度型(double)。 *枚举型(enum)。...整型 C语言的整型数据分为基本整型(int)、短整型(short)、长整型(long)三种。按数据是否有符号又可分为有符号型和无符号型。 **在不同的c编译环境中整型数据所占据的内存空间长度不一样。...实型 C语言的实型数据主要有单精度型(float)和双精度型(double) c语言中的实型常量都作双精度处理,分配8个字节; float型的数据a=123456.789e6的有效数是6,故输出的a...不同的数据类型他可参与的运算类型不一样: 像整型的话是加减乘除和求余。求余只适合于整型数进行求余,两个浮点数可以做求余运算吗?不可以。(为什么不可以) 实型呢就是加减乘除,没有求余。...(使用ASCII编码的话相当于对ASCII值做加减运算) 如果要处理数据类型,一定要注意两个方面的东西: (1)数据的取值范围:这一个类型的数据,在内存中怎么保存;比如说一个整型数在内存中是怎么保存的,

    66330

    基本数据类型及引用数据类型

    32717,默认值0 int:整型,用于存储整数,在内在中占32位,即4个字节,取值范围-2147483648~2147483647,默认值0 long:长整型,在内存中占64位,即8个字节-2^63~...2^63-1,默认值0L float:浮点型,在内存中占32位,即4个字节,用于存储带小数点的数字(与double的区别在于float类型有效小数点只有6~7位),默认值0 double:双精度浮点型,...1.2)定点变量 定点变量即整型变量,可细分成字节型变量、整型变量、短整型变量和长整型变量四种。 对各种定点变量的开销内存字节数和数值范围作简要说明。...两种浮点变量占内存字节数和数值范围 浮点常量也有单精度和双精度之分,前面列出的常量均是双精度常量,如果要特别说明为单精度常量,可以数据末尾加上f或F作为后缀,如12.34f。...double (双精度浮点型)一个dobule 64位 占用8个字节,例3.2,默认是0.0, 1.797693e+308~4.9000000e-324 占用8个字节 注:double型比float型存储范围更大

    2.4K30

    JAVA知识基础(一):数据类型

    在我们学习一门编程语言时,最先要了解的就是数据类型,而数据类型又都是抽象的概念,初学者理解起来比较困难,所以我们往往是先应用再理解,但是在本篇文章我决定用先理解再应用的方式尝试一下,试试效果。...为什么:为什么要采用数据类型呢?...我们可以从它的两个主要性质入手,一个是它的长度,一个是它的类型(这两个性质适用于理解,并没有明确规定): 长度:数据类型的本质就是你要告诉编译器:你在知道标识符在内存中的首地址的情况下,一次取多长就能够把该变量取完...2.2、八种数据类型的比较 看表格: 数据类型 位数 默认值 取值范围 byte(位) 8 0 -2^7 - 2^7-1 short(短整数) 16 0 -2^15 - 2^15-1 int(整数)...32 0 -2^31 - 2^31-1 long(长整数) 64 0 -2^63 - 2^63-1 float(单精度) 32 0.0 -2^31 - 2^31-1 double(双精度) 64 0.0

    26230

    Kotlin入门(17)等式判断的情况

    话说等式可是编程语言最基本的表达式之一,不管哪种高级语言,无一例外都采用双等号“==”判断两个变量是否相等;就算是复杂的对象,在Java中也可通过equals函数判断两个实例是否相等。...结构相等 基本数据类型如整型、长整型、浮点数、双精度数、布尔型,无论是在C/C++还是在Java抑或是在Kotlin,都使用双等号“==”进行两个变量的相等性判断。...至于字符串类型,则比较特殊,因为最早C语言是在内存中开辟一块区域,利用这块区域存储字符串,并返回一个字符指针指向该区域的首地址,此时如果对两个字符指针进行“==”运算,结果是比较两个指针指向的地址是否相等...因此,既然整型变量之间使用双等号“==”进行等式判断,字符串变量之间也能使用双等号“==”来判断;以此类推,判断两个字符串是否不相等,通过不等运算符“!=”即可直接辨别。...在Kotlin中,结构相等的运算符是双等号“==”,那么引用相等的运算符便是三个等号“===”,多出来的一个等号表示连地址都要相等;结构不等的运算符是“!=”,相对应的,引用不等的运算符是“!==”。

    88160
    领券