VB中的Dctionary对象介绍+小结.doc

  1. 1、本文档共10页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
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键名更改了,

文档评论(0)

wst34008 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档