如何在Excel VBA中使用字典Dictionary对象
答案:3 悬赏:50 手机版
解决时间 2021-01-26 12:56
- 提问者网友:容嬷嬷拿针来
- 2021-01-26 03:48
如何在Excel VBA中使用字典Dictionary对象
最佳答案
- 五星知识达人网友:人间朝暮
- 2021-01-26 04:03
首先得声明字典对象变量
声明有两种方式一种是前期绑定,dim d as new dictionary,另一种是后期绑定,set d=createobject("scripting.dictionary")
字典对象的属性
d.count(是返回字典对象中项目数)
d.key(字典对象中的关键字)
d.item(字典对象中key对应的条目)
d.comparemode(字典查询方式,有三种,用数字代表为0,1,2,0为精确比较,1为模糊比较)
字典对象的方法
d.add (向字典中写入一个关键字项目对)
d.exists (对象中存在的关键字返回true,否则返回false)
d.keys(返回一个一维数组,全部的关键字)
d.items(返回一个一位数组,全部的项目)
d.remove(从字典中清楚一个关键字项目对)
d.removeall(从字典对象中清楚所有的项目对)
通过熟练的掌握VBA字典技术可以处理数据的重复和汇总等要求。
全部回答
- 1楼网友:独钓一江月
- 2021-01-26 05:22
set d=CreateObject("Scripting.Dictionary")
这样就建立了一个字典d,然后可以赋值和查询,例如:
d("a")=1
d("b")=2
也可以判断:if d.Exists("c") then ...
- 2楼网友:神也偏爱
- 2021-01-26 04:10
在excelvba中使用字典,可以前期绑定也可以后期绑定。
软件版本:office2007
举例说明利用后期绑定字典的使用方法:
1.利用字典取a列不重复值,并放入到d列中:
2.alt+f11输入代码如下:
sub m()
set dic = createobject("scripting.dictionary") '后期绑定字典
for i = 1 to range("a65536").end(3).row '从a列头到尾,循环取数
dic(cells(i, "a").value) = "" '将a列内容依次放入字典中,从而去重
next i
[d1].resize(dic.count, 1) = application.transpose(dic.keys) '将字典关键字转置后放入d列
end sub
3.f5执行代码,回到excel,得到结果如下:
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯