- 积分
- 1573
- 明经币
- 个
- 注册时间
- 2007-7-23
- 在线时间
- 小时
- 威望
-
- 金钱
- 个
- 贡献
-
- 激情
-
|

楼主 |
发表于 2011-10-6 00:55:57
|
显示全部楼层
本帖最后由 zoubo604 于 2011-10-6 01:11 编辑
cabinsummer 发表于 2011-10-5 22:39 
十分感谢你,用了你写的代码,果然不出错了.我还有几个问题请教一下:
1,(setq olderr *error* *error* myerr)这句什么意思,怎么有两个*error*
2,最后一个函数,(defun myerr (msg)
(setqvar "osmode" os)
(setq *error* olderr)
(princ)
)
其中,(setq *error* olderr)这句是什么作用?
3,为什么我用一个循环,循环6次的(循环在VBA里,来调用TC 6次),应该前3次不出错的,花纹名可以填充,第4次的花纹名,花纹库里没有,应该在这次以后不填充.结果却是6次都没有填充.
4\你写这个ERROR函数是遇错继续执行,还是遇错结束程序,不崩溃?哪句能看出是遇错继续.5\(myerr)这句,要放在错误的后面吗?如果不知道哪句出错,是放在最前还是最后呢?
我又看了两遍你写的代码,我的理解是,如果出错了,不考虑还原捕捉设置及还原出错前的状态,好几句都可以省.关键是这(myerr)句.和
最后一个函数,是不是中间的内容都可以省了啊.只保留前后两句,如下
(defun myerr (msg)
)我这样的理解是否正确,请指正,谢谢.
|
|