- 1、本文档共9页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
VBA中Dictionary对象使用小结
Dim dict
创建Dictionary
Set dict = CreateObject(Scripting.Dictionary)
增加项目
dict.Add A, 300
dict.Add B, 400
dict.Add C, 500
统计项目数
n = dict.Count
删除项目
dict.Remove (A)
判断字典中是否包含关键字
dict.exists (B)
取关键字对应的值,注意在使用前需要判断是否存在key,否则dict中会多出一条记录
Value = dict.Item(B)
修改关键字对应的值,如不存在则创建新的项目
dict.Item(B) = 1000
dict.Item(D) = 800
对字典进行循环
k = dict.keys
v = dict.Items
For i = 0 To dict.Count - 1
key = k(i)
Value = v(i)
MsgBox key Value
Next
删除所有项目
dict.Removeall
实例:
Sub 宏1()
Set dic = CreateObject(Scripting.Dictionary) 字典
For i = 1 To 10000
If Not i Like *4* Then
dic.Add i, 如果不包含“1”
End If
Next
Range(a2).Resize(dic.Count, 1) = Application.WorksheetFunction.Transpose(dic.keys) 从A2单元开始向下放置
End Sub
VB中的Dictionary对象
核心归纳:
1、更换键名,用obj.key(xx)=newxx
2、更换键值或访问指定键:1、重设键值:obj.item(xx)=newxx,2、取得键值:response.write obj.item(xx)= ,如果obj.item(xx)=newxx 中的KEY键“xx”未设定时,会在对象的后面增加一个键值对。
3、获得条目数:obj.count (从1开始)
4、增加键值对:obj.add key,value
5、移除键:obj.remove(key) , obj.removeall()
6、判定键是否存在:obj.Exists(key)
7、遍历:先把键和值各自赋给一个变量,构成一维数组,再用FOR遍历
a=d.keys
b=d.Items
For x=0 to d.count-1 或 从上到下遍历,
For x=d.Count-1 To 0 Step -1 从下到上遍历 wan : abc zuo : 10254
Response.write a(x)
Response.write :
Response.write b(x)
Response.write br /
Next
8、用obj..CompareMode = 0(二进制,默认,大小写敏感)或obj.CompareMode = 1(文本,大小写不区分,但不会后面的覆盖前面)来指定比较模式,
=================================================================
简单的理解:Scripting.Dictionary对象相当于二维数组,但比二维数组更灵活,可以随时操纵其中某个键,而二维数组还要遍历。
以下用一个简单的案例来帮助理解:
set d=server.CreateObject(scripting.dictionary)
d.add zuo,21312
d.add wan,abc
response.write d.Count 计数,从1开始
Response.write br /
a=d.keys
b=d.Items
For x=0 to d.count-1 或 从上到下遍历,
For x=d.Count-1 To 0 Step -1 从下到上遍历 wan : abc zuo : 10254
Response.write a(x)
Response.write :
Response.write b(x)
Response.write br /
Next
Response.write d.item(wan) 输出指定的key值
Response.write br /
d.item(wan)=新值
Response.write d.item(wan) 输出指定的key值
Response.write br /
d.key(wan)=newwan 更改键名
wan键名更
您可能关注的文档
- PLC教程理论篇PLC 编程语言一.doc
- PLC教程理论篇PLC 编程语言五.doc
- PLC教程理论篇PLC 编程语言六.doc
- PLC教程理论篇PLC 编程语言四.doc
- PLC编程语言的计与应用.doc
- PM2.5检测传器AS404-Dust使用手册V1.0.doc
- PowerPoit2007学科教案.doc
- PowerPoit制作课件也精彩.doc
- Powerpoit课件制作技巧.doc
- Powerpoit高级技巧.doc
- 2023年陕西省商洛市柞水县两河乡招聘社区工作者真题参考答案详解.docx
- 2023年陕西省延安市宝塔区青化砭镇招聘社区工作者真题参考答案详解.docx
- 2023年陕西省汉中市西乡县罗镇乡招聘社区工作者真题及参考答案详解.docx
- 2023年陕西省延安市洛川县永乡招聘社区工作者真题及答案详解1套.docx
- 2023年陕西省商洛市商州区三岔河乡招聘社区工作者真题及参考答案详解一套.docx
- 2023年陕西省宝鸡市陇县八渡镇招聘社区工作者真题及参考答案详解一套.docx
- 2023年陕西省延安市洛川县石泉乡招聘社区工作者真题及参考答案详解一套.docx
- 2023年陕西省商洛市商州区沙河子镇招聘社区工作者真题附答案详解.docx
- 2023年陕西省咸阳市礼泉县赵镇招聘社区工作者真题及参考答案详解1套.docx
- 2023年陕西省商洛市丹凤县留仙坪乡招聘社区工作者真题及参考答案详解一套.docx
文档评论(0)