经常写vba代码就一定需要用到
Dictionary
字典对象。
字典对象可以用来存储数据对,每对数据由数据内容和数据的键值组成,每个数据内容有唯一的一个键值与之匹配。
当遇到重复的键值时,将会报错。
所有的数据键值和所有的数据内容都存储在相应的数组中。
由于它只能存储唯一的键值的特性,经常利用字典对象来处理涉及到重复值的问题。
同时由于它内在的特殊性,字典对象读取数据的速度特别快。
它主要有以下方法和属性:
Add方法:添加键值和项目对,如果键值已经存在,继续添加会报错。
object.Add (key, item)
2.Exists方法:判断键值是否存在。
object.Exists(key)
3.Remove方法:删除指定的键值、项目对
object.Remove(key)
4.RemoveAll方法:删除字典中所有的键值、项目对
7.Item属性:返回或者设置指定键值对应的项目。
object.Item(key)[ = newitem]
8.Key属性:设置指定的键值为其它键值,如果指定的键值不存在,则新增一个键值,同时项目对为空。
object.Key(key) = newkey
9.
CompareMode
属性:设置用于对比键值是否重复的模式,可以是文本、二进制、数据库或者是指定的LCID比较模式。
object.CompareMode[ = compare]
以下是一个通用的在vba中使用
Dictionary
字典对象的代码:
Sub QQ1722187970()
'定义字典对象变量
Dim oDic As Object
'创建字典对象
Set oDic = CreateObject("Scripting.Dictionary")
Dim arrKey
Dim arrItem
With oDic
'添加键和项目(key,item),其中键不能重复
.Add 1, "a"
.Add 2, "b"
' 判断是否存在某个键
If .exists(2) Then
End If
'把键2的项目修改为"d"
.Item(2) = "d"
'返回键的数组
arrKey = .keys
'返回项目的数组
arrItem = .items
'删除某个键值
.Remove (1)
'清空字典
.RemoveAll
End With
'释放字典对象,清空内存
Set oDic = Nothing
End Sub
如果想要详细的了解字典对象的属性、方法、以及它的帮助文档,可以访问
Dictionary字典对象
。
CompareMode
,
Dictionary
,
items
,
keys
,
RemoveAll
,
Scripting.Dictionary
,
字典
声明: 本站文章均属原创,未经作者同意必须保留此段声明,且在文章页面明显位置给出原文链接,否则视为侵权。如果想要每天都收到本站的技术文章推送,可以微信搜索公众号:水星Excel或者Excel_Office关注。其它事宜请加QQ:1722187970 或微信号:xycgenius 联系。