gpt4 book ai didi

vba - 您可以将 LongLong 存储在 Variant 中吗?

转载 作者:行者123 更新时间:2023-12-04 10:39:01 26 4
gpt4 key购买 nike

根据this article中的表格, Variant 类型不支持 VARENUM.VT_I8 - 这映射到 VBA 的 VbVarType.vbLongLong .这向我表明 Variant 不能容纳 LongLong - 然而 LongLong 只与 Double 或 Currency 一样宽 - 这些可以存储在 Variant 中,所以我看不出为什么 LongLong 不能,并且我想知道那篇文章是否过时了。

无论如何,我没有 64 位 Excel,所以有人可以帮我检查一下 - 如果不支持,那么有什么想法为什么吗?

最佳答案

基于 this link that braX发布后,我的 64 位 Excel 能够运行以下代码。

Option Explicit

Public Sub ShowThatVariantsCanBeLongLong()
Dim myLongLong As Variant

myLongLong = 9.22337203685478E+18

Sheet1.Cells(1, 1).Value = myLongLong
End Sub

这是我的 excel 应用程序的重要性的证明。

enter image description here

编辑:

Greedo评论说 myLongLong可能被强制转换为 double 型,所以我添加了 ^指定给我分配给 myLongLong 的号码.

这是我最初发布的代码的输出,其中包含 myLongLong 的类型名称.

enter image description here

所以它看起来像 Variant将默认输入 double ,但这不一定回答问题。

这是我使用的修改后的代码:
Option Explicit

Public Sub ShowThatVariantsCanBeLongLong()
Dim myLongLong As Variant

myLongLong = 9223372036854775807^

Sheet1.Cells(1, 1).Value = myLongLong
Sheet1.Cells(1, 2).Value = TypeName(myLongLong)
End Sub

以下是屏幕截图中代码的输出:

enter image description here

它看起来像 Variant支持 LongLong .

关于vba - 您可以将 LongLong 存储在 Variant 中吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60020919/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com