先谈几个技术问题:
1:先来一个技术问题,今天在修订系统的程序中发现一个问题,就是需要需要遍历Excel中Chart的的ChartType,查看了一下帮助,只能使用Enum 类型的xlChartType,这就遇到了一个很棘手的问题,就是如何遍历Enum的老问题了,这真是一个太棘手的问题了,在Google上搜索了一下,只有装配脑袋的一篇文章EnumHelper:一个小小的枚举工具还算不错,但是还是解决不了我得问题,如果Enum的遍历如果能够像下面这个方式就好了:
For Each cc In Excel.XlChartType
Next
不知道是否是白日做梦,呵呵,为了解决现在还只能用老办法,用类重新包装一下再用了。
2:在VBA中各种属性的使用是存在一些逻辑关系的,因此有些时候必然要用一些怪异的办法解决,比如有些时候Cahrt的SeriesCollection属性是否存在,但是如果进行各种判断也就费劲了,找了个偷懒的方法如下:
Private Function SeriesCollectionIsExists(objChart As Object)
On Error GoTo onErrors
Dim i As Integer
i = objChart.SeriesCollection.Count
onErrors:
Select Case Err.Number
Case 0
SeriesCollectionIsExists = True
Exit Function
Case Else
Err.Clear
SeriesCollectionIsExists = False
End Select
End Function
有些时候用好错误处理看来是懒人的最爱呀。
3:经常忽略PowerPoint中文字颜色的设置问题,最关键的就是那个Type属性,以前很少用,颜色的设置就比较呆板了,看了这段代码,才知道哦还能这么用。
示例
本示例切换当前演示文稿第一张幻灯片的两种背景色,一种是显式的红-绿-蓝值所定义的颜色,另一种是配色方案的背景色。
.FollowMasterBackground = False
With .Background.Fill.ForeColor
If .Type = msoColorTypeScheme Then
.RGB = RGB(0, 128, 128)
Else
.SchemeColor = ppBackground
End If
End With
End With
不谈技术问题了,换个话题。
1:今天开始使用了Google Talk了,我得Gmail是 NetDuiker AT Gmail.com,平时用Gmail主要是用来接收各种邮件的,朋友很少有用Gmail的,于是在网上找了两个名人,加为好友,结果得到的结果如下:
(1)上班时间请勿打扰。
(2)Very busy。
哦,我现在知道了大家确实都很忙。
2:下班的时候和同事聊了聊,结果知道了一些有意思的事,问他什么时候编程感觉最爽:
(1)做没做过的。
(2)修改自己弄错的。
(3)解决别人解决不了的。
看来程序员都是喜欢一些创新的事,就是不喜欢做重复的,没有成就感的事情,但是这段我们恰恰就在做一些重复的事,好累还得加班的,看来这段大家都是不爽的。
3:给自己的Blog装了装修,在blogpatrol申请了个计数器,很不错。