生活 2022-07-16 07:20 作者:生活百科评论:0    浏览:344    

vba字典(vba字典用法)


一直想写几篇文章来总结一下过去VBA中字典的使用经验。当然这些都是站在前人的肩膀上完成的。字典相对于集合或数组来说,更容易理解和运用。

字典在数据处理中,运行速度是极快的,搭配一些函数来使用,我是认为是相当完美了。我在字典使用中,主要用到以下几点:

去重求和计数数据匹配

我将会分别用几篇文章来分享一下字典的使用经验。

字典的声明

字典不是VBA内置的类型,VBA中的字典是微软Windows脚本语言中的一个很有用的对象,字典是由具有唯一性的关键字(Key)和它的项(Item)组成的集合,Key相当于字典中的每个字,具有不重复性,Item相当于对字典中每个字对应的解释。

因为字典不是VBA内置的类型,它是Windows脚本语言的类型,所以声明字典的方法就和VBA内置对象不同,它有两种方法声明,一种是前期绑定声明,一种是后期绑定声明。前期声明的话,我们需要去引用对应的scrrun.dll文件,相对来说比较麻烦。

因此,在VBA中,我们大都使用后期声明。如下:

Dim d As ObjectSet d = CreateObject("scripting.dictionary") '建立字典字典如何赋值

字典赋值的时候,有三个参数是必需的。如下:

语法:

[DictionaryObject].Add([Key], [Item])

参数:

参数

说明

[DictionaryObject]

必需的。字典的名称

[Key]

必需的。在 Dictionary 中引用 Item 的数据。

[Item]

必需的。设置或返回 Dictionary 中 Item 的值

如下面的例子:

Dim dic As Object, i As LongSet dic = CreateObject("Scripting.Dictionary")For i = 1 To 100dic.Add i, ""Next

我们设置字典的名称为dic,并将1到100分别赋值给了Key。但每个对应的Item均为空。

字典对象的方法

字典有6个方法,如下表:

方法

说明

Add(key,item)

增加键/条目对到 Dictionary

Exists(key)

如果指定的键存在,返回 True,否则返回 False

Items()

返回一个包含 Dictionary 对象中所有条目的数组

Keys()

返回一个包含 Dictionary 对象中所有键的数组

Remove(key)

删除一个指定的键/条目对

RemoveAll()

删除全部键/条目对

上面我们赋值的时候,已经使用add的方法为字典赋值了。

后面我们会通过各种实例对字典中的各种方法进行讲解。因此暂不详述了。

字典的四个属性

属性

说明

CompareMode

设定或返回键的字符串比较模式

Count

只读。返回 Dictionary 里的键/条目对的数量

Item(key)

设定或返回指定的键的条目值

Key(key)

设定键值

下面的代码举例说明字典中 Count 属性的使用方法:

Dim a, d, i '创建一些变量Set d = CreateObject("Scripting.Dictionary")d.Add "a", "Athem" '添加一些关键字和条目。d.Add "b", "Belgre"d.Add "c", "Caire"a = d.Keys '获得关键字For i = 0 To d.Count -1 '遍及数组Debug.Print a(i) '打印关键字Next

这篇文章我们对字典的一些关键信息进行了梳理,简要的描述了字典的一些操作。后面我们将深入的对字典实际中的各种应用方法逐一的进行说明。

 
标签: 字典
0相关评论
打赏