Tag Archives: VBA

VBA中防止屏幕更新的方法

Application.DisplayAlerts = FalseApplication.ScreenUpdating = False main Application.DisplayAlerts = TrueApplication.ScreenUpdating = True

VBA中数组的使用

没时间细看,先引用一个别人的文章。 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对象的遍历

以前在VBA中Dictionary对象使用小结中有一种字典对象的遍历方法,实际上是将字典的key和value转换为数组,写起来比较麻烦。 类似于一些动态语言里面的hash遍历,VBA中字典对象比较方便的遍历代码是: Dim key For Each key In dict msgbox dict(key) Next

在Dictionary对象中插入自定义数据类型

1.点击菜单[插入],选择[类模块],这样就创建了一个新类 2.在属性窗口中,将默认的"类1"改为合适的名字,如clsPerson 3.在类clsPerson的代码窗口输入以下代码: Private mName As StringPublic age As IntegerPublic birth As Date Public Property Get Name() As String  Name = mNameEnd Property Public Property Let Name(ByRef vNewValue As String)  mName = vNewValueEnd 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 = [...]

VBA中Dictionary对象使用小结

VBA中Dictionary对象使用小结 Dim dict ‘ 创建DictionarySet dict = CreateObject(“Scripting.Dictionary”) ‘ 增加项目dict.Add “A”, 300dict.Add “B”, 400dict.Add “C”, 500 ‘ 统计项目数n = dict.Count ‘ 删除项目dict.Remove (“A”) ‘ 判断字典中是否包含关键字dict.exists (“B”) ‘ 取关键字对应的值,注意在使用前需要判断是否存在key,否则dict中会多出一条记录Value = dict.Item(“B”) ‘ 修改关键字对应的值,如不存在则创建新的项目dict.Item(“B”) = 1000dict.Item(“D”) = 800 ‘ 对字典进行循环k = dict.keysv = dict.ItemsFor i = 0 To dict.Count – 1 key = k(i) Value = v(i) [...]