设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

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

[其它] 谁帮我看一下~

[复制链接]
跳转到指定楼层
1#
发表于 2005-1-11 16:27:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
Private Sub cmdadd2_Click()

Dim a As String

Dim b As String

Dim db As Database

Dim rs As DAO.Recordset

Dim str As String

a = Me.材料名称

b = Me.材料名称

If IsNull(Me.材料名称) Or Trim(Me.材料名称) = "" Then

MsgBox "材料名称不能为空!"

Else

a = DLookup("材料名称", "材料价格表", "材料名称='" & Me.材料名称 & "'")←提示这里是黄色的,出错

If IsNull(a) = False Then

Set db = CurrentDb

'Set rs = db.OpenRecordset

str = "insert into 材料价格表(材料名称,价格) values('" & b & "','" & Me.材料价格 & "')"

db.Execute (str)

MsgBox "新材料添加成功"

Me.材料名称 = Null

Me.材料价格 = Null

Else

MsgBox "该材料已存在,请重新输入!"

Me.材料名称 = Null

Me.材料价格 = Null

End If

End If

End Sub



谁帮我分析一下。





本帖子中包含更多资源

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

x
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
发表于 2005-1-11 16:55:00 | 只看该作者
以下是引用keanu在2005-1-11 8:26:31的发言:

Private Sub cmdadd2_Click()

Dim a As String

Dim b As String

Dim db As Database

Dim rs As DAO.Recordset

Dim str As String

a = Me.材料名称

b = Me.材料名称

If IsNull(Me.材料名称) Or Trim(Me.材料名称) = "" Then

MsgBox "材料名称不能为空!"

Else

a = DLookup("材料名称", "材料价格表", "材料名称='" & Me.材料名称 & "'")←提示这里是黄色的,出错

If IsNull(a) = False Then

Set db = CurrentDb

'Set rs = db.OpenRecordset

str = "insert into 材料价格表(材料名称,价格) values('" & b & "','" & Me.材料价格 & "')"

db.Execute (str)

MsgBox "新材料添加成功"

Me.材料名称 = Null

Me.材料价格 = Null

Else

MsgBox "该材料已存在,请重新输入!"

Me.材料名称 = Null

Me.材料价格 = Null

End If

End If

End Sub



谁帮我分析一下。




类型好象不对,dim a as string?
3#
 楼主| 发表于 2005-1-11 17:07:00 | 只看该作者
问题已经解决,多谢zhengjialon

我把代码发上来,今天又多学一招,呵呵

Private Sub cmdadd2_Click()

On Error Resume Next

Dim db As Database

Dim rs As DAO.Recordset

Dim str As String

If IsNull(Me.材料名称) Or Trim(Me.材料名称) = "" Then

MsgBox "材料名称不能为空!"

Else

If IsNull(DLookup("材料名称", "材料价格表", "材料名称='" & Me.材料名称 & "'")) Then

'以前当返回值是空的时候会报错,用这个语句就不会了

Set db = CurrentDb

'Set rs = db.OpenRecordset

str = "insert into 材料价格表(材料名称,价格) values('" & Me.材料名称 & "','" & Me.材料价格 & "')"

db.Execute (str)

MsgBox "新材料添加成功"

Me.材料名称 = Null

Me.材料价格 = Null

Else

MsgBox "该材料已存在,请重新输入!"

Me.材料名称 = Null

Me.材料价格 = Null

End If

End If

End Sub

[此贴子已经被作者于2005-1-11 9:07:49编辑过]

4#
发表于 2005-1-11 17:31:00 | 只看该作者
其实dim a就不会报错
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-10-6 06:44 , Processed in 0.094672 second(s), 28 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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