代码:VBA
如何在字典的帮助下进行以下操作?
项目“Facebook”应该有多个键,例如
。添加项目“Facebook”,“品牌”,2
。添加项目“Facebook”,“发布”,5
。添加项目“Facebook”,“喜欢”,7
如何搜索整数值?
答案 0 :(得分:0)
我建议使用用户类型或类来存储数据。例如:
'Minimalistic ChannelInfo.cls
Option Explicit
Public Channel As String
Public Category As String
Public Count As Integer
对于容器,Dictionary
需要一个唯一键,因此另一种类型的容器(数组,集合或自定义容器类)可能是更好的选择,具体取决于您从中检索项目的方式。如果您需要为任意Type
获取唯一键,则可以使用VarPtr
。如果您需要唯一的对象键,您可以创建自己的哈希函数或使用其ObjPtr
。请注意,这些对于检索尚未引用的项目特别有用。
Dim myFoos As New Scripting.Dictionary
Dim foo As ChannelInfo
Set foo = New ChannelInfo
With foo
.Channel = "Facebook"
.Category = "brand"
.Count = 2
End With
myFoos.Add ObjPtr(foo), foo
如果Channel和Category的组合是您以后用于聚合项目的组合,那么将其用作关键字可能更有用:
'Key is "Facebook|brand"
myFoos.Add foo.Channel & "|" & foo.Category, foo