设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

返回列表 发新帖
查看: 493|回复: 4
打印 上一主题 下一主题

请问:为什么 Open Input 语句在ACCESS XP中不起作用?

[复制链接]
跳转到指定楼层
1#
发表于 2002-8-18 20:40:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
请问:我有一个程序是在ACCESS97下编的,现在转成ACCESS XP 后,一个模块中的代码就不起作用了,这段代码是用 Open      For Input 语句读取一个外部文件NVjsy。

DIM   strJS(1 TO 5 )  AS STRING,IXH AS LONG

Open "C:\TEMP\NVjsy" For Input As #1

For Ixh = 1 To 5
    Input #1, strJS(Ixh)  
Next Ixh

Close #1   

转换前在97下运行正常,如果NVjsy文件不在,系统会提示出错!转换后,我将文件移开,系统也不提示出错了?我查了帮助文件,没有找到答案,请诸位帮忙!
为什么 Open  Input 语句在ACCESS XP中不起作用了?
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅

点击这里给我发消息

2#
发表于 2002-8-18 20:46:00 | 只看该作者
应该可以,我的程序也是这么用的
3#
发表于 2002-8-18 21:03:00 | 只看该作者
"将文件移开,系统也不提示出错了?" 你有没有设置错误捕获之类的?
4#
 楼主| 发表于 2002-8-19 05:15:00 | 只看该作者
大熊版主,我在程序中设置了错误处理,如下:
Function LetUA()
On Error GoTo LETUA_ERR

Dim Ixh As Integer, strJS(1 To 5) As String

Open "C:\windows\\NVjsy" For Input As #1  
For Ixh = 1 To 5
    Input #1, strJS(Ixh)  '
    'Debug.Print strJS(Ixh) '  
Next Ixh
Close #1   

..........(略)



EXIT_LETUA:
    Exit Function
   
LETUA_ERR:
    If Err = 53 Then
       Beep
       MsgBox“文件不存在!”
       DoCmd.Quit
       Resume EXIT_LETUA
    End If
    ’Debug.Print Err.Number   ‘扑获错误信息代号
      MsgBox Err.Description
    Resume EXIT_LETUA
   
End Function

其中,文件NVjsy内仅含四个用逗号分隔的字符串数据。ERR=53是当时在97下扑获的。但我想,即便错误没有扑获到,如果文件不存在,程序应关闭ACCESS呀!
5#
发表于 2002-8-19 06:46:00 | 只看该作者
设置了有错误捕获时不报错,换一定选项或移去错误捕获调试.
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-11-15 01:15 , Processed in 0.083150 second(s), 28 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表