VB 保存文件时点击取消出现实时错误52

想将计算的结果保存在文本文件里,代码如下:PrivateSubCommand2_click()CommonDialog1.FileName="*.txt"CommonDi... 想将计算的结果保存在文本文件里,代码如下:
Private Sub Command2_click()
CommonDialog1.FileName="*.txt"
CommonDialog1.Filter=" txt file|*.txt|all file|*.* "
CommonDialog1.ShowSave
Open CommonDialog1.FileName For Output As #1
print #1 "消耗量" &Chr(13)&Chr(13)&Chr(13)&Val(Tex2t.Text)
Close 1
End Sub

保存文件没有问题,但是点取消后出现实时错误 52 错误的文件名或号码
展开
 我来答
zcxlhx
2013-07-23 · TA获得超过175个赞
知道小有建树答主
回答量:334
采纳率:0%
帮助的人:180万
展开全部
这个是个BUG,要自行处理错误的。
Private Sub Command2_click()
on error goto hh
CommonDialog1.FileName="*.txt"
CommonDialog1.Filter=" txt file|*.txt|all file|*.* "
CommonDialog1.ShowSave
Open CommonDialog1.FileName For Output As #1
print #1 "消耗量" &Chr(13)&Chr(13)&Chr(13)&Val(Tex2t.Text)
Close 1
exit sub
hh:

End Sub
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友f7fee79f7
2013-07-23 · TA获得超过395个赞
知道小有建树答主
回答量:342
采纳率:0%
帮助的人:119万
展开全部
当你点击取消时,CommonDialog1.ShowSave后面的这几句,还会顺序执行,所以会报错。

Open CommonDialog1.FileName For Output As #1
print #1 "消耗量" &Chr(13)&Chr(13)&Chr(13)&Val(Tex2t.Text)
Close 1

因此,这里,你需要把点取消的情况考虑进来进行处理。
if CommonDialog1.FileName<>"*.txt" then ' "*.txt"是你前面指定的值

else

endif
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
Archlen
2013-07-23 · TA获得超过260个赞
知道小有建树答主
回答量:297
采纳率:100%
帮助的人:163万
展开全部
把CommonDialog的CancelError属性设置为False就可以了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式