设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

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

[ADO/DAO] 3464, 保存时提示 标准表达式中数据类型不匹配

[复制链接]
跳转到指定楼层
1#
发表于 2011-11-3 14:43:41 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 紫风 于 2011-11-3 14:48 编辑

请先看以下代码:
Private Sub CmdSave_Click()
    Me.Refresh
    If IsNull(DLookup("维修ID", "tbl维修", "维修ID='Me.维修ID' ")) Then
    Dim Stemp As String
    Dim rs As New ADODB.Recordset
    rs.Open "tbl维修", CurrentProject.Connection, adOpenDynamic, adLockOptimistic
        With rs
            .AddNew
            ![维修ID] = Me.维修ID
            ![日期] = Me.日期
            ![维修类型] = Me.维修类型
            。。。。。。。。。。。

报错在红色部分。
维修ID是 数字
是不是数字或文本的问题?应该怎么改呢?有劳各位帮看一下,谢谢了!

补充一下:
当录入新记录保存时,是正常的,但当窗体里有记录,我修改后再保存,就在这里报错了,代码都跑不到我修改记录那行。
我的意图是:
如果表里没有当前窗体的维修ID的记录,则添加新记录;如果表里有该ID的记录,则执行修改记录的代码。
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
发表于 2011-11-3 15:23:24 | 只看该作者
  If IsNull(DLookup("维修ID", "tbl维修", "维修ID=" & Me.维修ID ))
3#
 楼主| 发表于 2011-11-3 15:27:33 | 只看该作者
谢谢楼上!

不过还是过不去。这一行是没有问题了,但是在.update就卡住了,说是索引问题?
4#
发表于 2011-11-3 17:53:07 | 只看该作者
有没有循环语句和MoveNext?
5#
 楼主| 发表于 2011-11-4 09:30:32 | 只看该作者
本帖最后由 紫风 于 2011-11-4 09:32 编辑

回版主,没有MOVENEXT或循环。
我把库上传上来了,请帮我看一下如何解决,好么?谢谢!
出问题的代码在frm维修的CmdSave里。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
6#
发表于 2011-11-7 21:40:33 | 只看该作者
不好意思,之前出去玩了几天,今天才看到附件。根据提示,你的索引为空,因此更新时会弹出错误提示,加上这句:
rs(0)=Me.维修ID(我比较习惯这样写,有时候可能用For循环来处理,会节约些代码)
或者
!维修ID=Me.维修ID
再测试下看看(我的2010版本测试后,保存成功)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-5-11 02:33 , Processed in 0.105587 second(s), 30 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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