日积月累
-
VBA中数组的使用
2009-08-09
没时间细看,先引用一个别人的文章。
http://www.officefans.net/blog/html/12/19812-816.html
一维数组定义:Dim holidays(10) As Integer
多维数组定义:Dim worktimes(0 To 9999, 0 To 1) As Date
数组值的引用:worktimes(i, j)
-
VBA中Dictionary对象的遍历
2009-05-10
以前在VBA中Dictionary对象使用小结中有一种字典对象的遍历方法,实际上是将字典的key和value转换为数组,写起来比较麻烦。
类似于一些动态语言里面的hash遍历,VBA中字典对象比较方便的遍历代码是:
Dim key
For Each key In dict
msgbox dict(key)
Next
-
在Dictionary对象中插入自定义数据类型
2005-11-18
1.点击菜单[插入],选择[类模块],这样就创建了一个新类
2.在属性窗口中,将默认的"类1"改为合适的名字,如clsPerson
3.在类clsPerson的代码窗口输入以下代码:
Private mName As String
Public age As Integer
Public birth As DatePublic Property Get Name() As String
Name = mName
End PropertyPublic Property Let Name(ByRef vNewValue As String)
mName = vNewValue
End Property注:为了简单起见,我将部分类成员设置为了public类型(如果设置为Private类型,可以结合使用LET,GET关键字来设置读写权限,感觉和JavaBean很相像)
4.定义变量,类型为clsPerson,并加入到Dictionary中
Sub test()
Dim p As clsPerson
Dim d
Set d = CreateObject("Scripting.Dictionary")
Set p = New clsPerson
p.Name = "张三"
p.age = 20
p.birth = Date
d.Add "01", p
MsgBox d.Item("01").Name
End Sub -
VBA中Dictionary对象使用小结
2005-11-15
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")' 取关键字对应的值
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


