Excel 字典数据类型
例如,许多来源声称字典的键可以是字符串以外的多种数据类型。然而,当我尝试将整数和日期作为键时,它失败了。有人能解释一下吗 我在下面尝试了@Tim Williams的答案,它很有效。我以前拥有的是Excel 字典数据类型,excel,dictionary,key,vba,Excel,Dictionary,Key,Vba,例如,许多来源声称字典的键可以是字符串以外的多种数据类型。然而,当我尝试将整数和日期作为键时,它失败了。有人能解释一下吗 我在下面尝试了@Tim Williams的答案,它很有效。我以前拥有的是 Private Sub trial() Dim dict As New Dictionary dt = 1 'vols.marketDate = Date dict.Add dt, 4 'vols c = dict(dt) End Sub 与@Tim Williams相比,我定义字典的方式有什么不同
Private Sub trial()
Dim dict As New Dictionary
dt = 1
'vols.marketDate = Date
dict.Add dt, 4 'vols
c = dict(dt)
End Sub
与@Tim Williams相比,我定义字典的方式有什么不同吗
我问题的第二部分与词典的价值有关。我运行了以下VBA代码,试图使用用户定义的结构作为措辞的值,并遇到错误消息: 这是否意味着我不能在字典中使用结构作为值,或者我做错了什么?如果是后一种情况,我如何补救?这里没有问题:
Sub Tester()
Dim d, k
Set d = CreateObject("scripting.dictionary")
d.Add 1, 1
d.Add "a", 2
d.Add #1/2/1978#, 3
d.Add CDbl(66), 4
d.Add CSng(99), 5
d.Add True, 6
For Each k In d.keys
Debug.Print TypeName(k), k, d(k)
Next k
End Sub
输出:
Integer 1 1
String a 2
Date 1/2/1978 3
Double 66 4
Single 99 5
Boolean True 6
如果您对特定代码有问题,请将其添加到您的问题中 我试过你的样品。它起作用了。我只是在问题中添加了我的原始代码。请你看一下我申报这本词典的方式好吗?有效吗?谢谢你,蒂姆·威廉姆斯。这很奇怪,它以前不起作用。。。我添加了一个相关的第二个问题,关于字典值的数据类型。你介意看看这个问题吗?用类代替类型。
Integer 1 1
String a 2
Date 1/2/1978 3
Double 66 4
Single 99 5
Boolean True 6