Dictionary对象的使用
来源:互联网 发布:七喜cms 编辑:程序博客网 时间:2024/05/17 04:42
合理使用Dictionary(数据字典)对象,可以提高代码运行速率。通过创建并初始化Dictionary对象,建立“键-值”对,通过Dictionary的exists(key1)方法和Item(key1)属性可以快速的查找出键的值,而不需要每次遍历整个表。
Dictionary相关属性和方法:
1.创建Dictionary
2.属性
CompareMode 设定或返回键的字符串比较模式
Count 返回Dictionary里的键/条目对的数量
Item(key) 设定或返回指定的键的条目值
Key(key) 设定键值
3.方法
Add(key,item) 增加键/条目对到Dictionary
Exists(key) 如果指定的键存在,返回True,否则返回False
Items() 返回一个包含Dictionary对象中所有条目的数组
Keys() 返回一个包含Dictionary对象中所有键的数组
Remove(key) 删除一个指定的键/条目对
RemoveAll() 删除全部键/条目对
3.应用实例:
当前工作簿中有三张工作表——问题跟踪、映射目录和SDM_ALL,结构为:
问题跟踪(……,数据表,字段,问题类型,……);(已排序)
映射目录(……,表名,……,问题跟踪);
SDM_ALL(……,表名,字段名,……,问题跟踪);
要求根据“问题跟踪.数据表=映射目录.表名”连接,在映射目录的问题跟踪列创建连接,显示内容为“>>”,连接到问题跟踪表相应的第一条记录。类似的,根据表名和字段名做连接,在SDM_ALL的问题跟踪列创建连接,显示内容为“>>”,连接到问题跟踪表相应的记录。
4.相关代码
5.几点说明
(1)为列或行定义变量,这样在表结构变化时,如在插入了一个列,只需要对列变量重新复制即可,增强程序的灵活性。
(2)使用UCase()函数将小写转换大写字母。
(3)当主键为多列时,如表名+字段名唯一识别一条记录,可使用一个不常用的字符如“#”将表名和字段名拼接起来,作为Dictionary的键值key。
ColDict.Add UCase(Trim(QSheet.Cells(j, ENTABLE)) & "#" & Trim(QSheet.Cells(j, ENCOL))), j
(4)字符串连接符号——“&”。
k = TbDict.Item(UCase(Trim(CSheet.Cells(i, CENTABLE))))
SubAddr = QSheet.Name & "!" & k & ":" & k
一定要用QSheet.Name,这样才能获得sheet名,如果写成QSheet报错。
(5)使用Hyperlinks对象的Add方法创建超链接:
Sheets("映射目录").Hyperlinks.Add Anchor:=CSheet.Cells(i, CTRACK), Address:="", SubAddress:=SubAddr, TextToDisplay:=">>"
Anchor为创建链接的对象,SubAddress为链接到的地址。
- Dictionary对象的使用
- Asp:Scripting.Dictionary对象的使用
- delphi使用VB的dictionary对象
- 如何使用Dictionary对象?(
- Dictionary对象使用
- 使用ASP的Scripting.Dictionary对象打造完美购物车
- Unity 对象池的简单介绍(Dictionary使用)
- dictionary的使用.net
- dictionary的使用
- dictionary的使用
- dictionary的使用
- iOS dictionary的使用
- python dictionary的使用
- Dictionary 的使用
- 在QTP中使用Dictionary对象
- VBA中Dictionary对象使用小结
- VBA中Dictionary对象使用小结
- VBA中Dictionary对象使用小结
- ACK是什么意思
- 一张关于威博文件管理系统3.6的应用图览
- Struts1和Struts2区别
- ARM Linux Kernel Boot Requirements
- 设计模式 之 单例模式
- Dictionary对象的使用
- CSS border-collapse用途
- 【转】淘宝性能测试要点
- Event.ADD_TO_STAGE事件
- ListCtrl 详细用法
- phyeas Seam新手实战(2):自动生成的代码
- CSS 鼠标(cursor)一览表
- C语言宏定义中#用法
- Java获得系统环境变量