ExcelTip.Net留存知识帖 ---【注:附件之前被网盘供应商清空后,现已修复-现已修复-现已修复为本地下载!】
现在位置:首页 > 我的酷贴 > Excel VBA > 《字典法学习拾零》

《字典法学习拾零》

作者:绿色风 分类: 时间:2022-08-18 浏览:95
楼主
xyh9999
《字典法学习拾零》
以下用dic代表Dictionary对象。通过Dim dic As Object:Set dic = CreateObject("scripting.dictionary")建立而来。
对dic的主要属性及方法介绍如下:
1.count:
    返回字典中条目个数。在建立字典对象时该属性返回0,即在Dim dic As Object:Set dic = CreateObject("scripting.dictionary")后dic.count后回0。
2.item:
    Item(key) 设定或返回指定的键的条目值。
    如果在改变某个 item 时,没有找到 key,则用指定的newitem创建一个新的 key。
    对dic.item(newkey)=itemValue进行赋值时不需要检查dic.exists(newkey)的真假,当dic.exists(newkey)为假时会自动增加字典条目,而用“dic.add newkey,itemValue”时必须确保newkey在字典中不存在,即dic.exists(newkey)必须为假时“dic.add newkey,itemValue”才不会出错。
    dic.item(newkey)=itemValue可以简写为dic(newkey)=itemValue。
3.items:
    是item的值集,可以用a=dic.items将所有item值赋值给a,a就是一个数组,a的下标为0。当dic中存在条目时,UBound(dic.items)及UBound(a)反回的上标数均比dic.count小1。
    用for each temp in dic.items可以实现在dic.items内循环。
4.key:
    Key(key) 设定键值。
    可以改变旧的key,比如dic.key("条目1")="条目2",但须考虑 dic.exists("条目2"),"条目2"已存在时会出错。
    如果在更改某个key 时,没有找到 key,则会出现运行时错误。
5.keys:
    是key的值集,可以用a=dic.keys将所有key值赋值给a,a就是一个数组,a的下标为0。当dic中存在条目时,UBound(dic.keys)及UBound(a)反回的上标数均比dic.count小1。
    用for each temp in dic或for each temp in dic.keys可以实现在dic.keys内循环。
6.exists:
    返回Key是否存在。如:dic.exists(key)
7.add方法:
    用于增加一个字典条目newkey。当dic.exists(newkey)=false时,“dic.add newkey,itemValue”才不会出错。
8.remove方法:
    用于删除一个字典条目key。当dic.exists(key)=true时,“dic.remove key”才不会出错。
9.removeall方法
    dic.removeall用于删除dic中的所有条目。
10.CompareMode:
    (仅用于VBScript)设定或返回键的字符串比较模式。
    dic.CompareMode[ = compare]进行设置,compare参数如下:
    ━━━━━━━━━━━━┳━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
                  常数              ┃ 值   ┃  描述                                                         
    ━━━━━━━━━━━━╋━━━╋━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
    VbUseCompareOption   ┃  -1   ┃  使用 Option Compare 语句的设置值进行比较。
    VbBinaryCompare         ┃   0   ┃  进行二进制比较。
    VbTextCompare           ┃   1    ┃  进行文字比较。
    VbDatabaseCompare    ┃   2    ┃  仅用于 Microsoft Access。进行基于您自己数据库中信息的比较。
    ━━━━━━━━━━━━┻━━━┻━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
2楼
ljx63426

3楼
ggsmart
好东西,谢谢分享
4楼
猴子
如果有视频讲座就更好了
5楼
海绵宝宝
就是将msdn中所讲的的DICTIONARY OBJECT 翻译了下
但同样感谢楼主的热心学习贴
6楼
andrewyang
学习了 呵呵
7楼
人性殿堂
还以为是长篇大论  写得如果精简  真是言简意骇
8楼
我的1314
好东西,谢谢分享
9楼
bluexuemei
学习!
10楼
吾股丰登
不错  谢谢了
11楼
scott090
謝謝分享

免责声明

有感于原ExcelTip.Net留存知识的价值及部分知识具有的时间限定性因素, 经与ExcelTip.Net站长Apolloh商议并征得其同意, 现将原属ExcelTip.Net的知识帖采集资料于本站点进行展示, 供有需要的人士查询使用,也慰缅曾经的论坛时代。 所示各个帖子的原作者如对版权有异议, 可与本人沟通提出,或于本站点留言,我们会尽快处理。 在此,感谢ExcelTip.Net站长Apolloh的支持,感谢本站点所有人**绿色风(QQ:79664738)**的支持与奉献,特此鸣谢!
------本人网名**KevinChengCW(QQ:1210618015)**原ExcelTip.Net总版主之一

评论列表
sitemap