Office中国论坛/Access中国论坛

标题: 关于记录在不在表中 [打印本页]

作者: wonderfeng    时间: 2006-8-22 03:50
标题: 关于记录在不在表中
如何表示

一个值(文本)在不在一个集合(表)中

比如 一张表里有1 ……

                          2 ……

                          3……

                          4……

                          5 ……

有五条记录,如何用计算机语言来说第一条记录在不在这张表中!

谢谢
作者: wonderfeng    时间: 2006-8-22 06:40
重新描述一下问题

表1

     列1   列2

     1     a

     2     b

     3     c

     4     d

     5     e

实现如下功能: 两个文本框 text1   text2

  text1 输入 1 text2 出现a

            2           b

  …………

但可能text1 输入6 或者7 ……表里没有的对应结构

所以先判断输入的text1 是不是在表里的 是的话就用rs.find[列1]=me.text1

不在表里的话就报错

问题是: 如何来判断记录在不在表里
作者: 一点通    时间: 2006-8-22 07:19
If IsNull("[字段名]", "表名", "[条件字段]=" & 文本框名) Then  '数值型
   MsgBox "没有找到对应的数据"
Else
    Me.文本框2 = DLookup("[字段名]", "表名", "[条件字段]=" & 文本框名)
End If

作者: wonderfeng    时间: 2006-8-22 08:05
报错啊!

isnull 高亮 错误信息:编译错误,错误的参数号或无效的属性赋值
作者: wonderfeng    时间: 2006-8-22 08:15
换了这个

Private Sub 回收单位_LostFocus()
If DLookup("[加工单位名称]", "加工单位", "[编号]=" & Me.回收单位) = Null Then
   MsgBox "没有找到对应的数据"
Else
    Me.回收地点 = DLookup("[加工单位名称]", "加工单位", "[编号]=" & Me.回收单位)
End If


可是还是有两种情况没考虑到

1.回收单位为空

2.回收单位编号不在“加工单位”表中……
作者: 一点通    时间: 2006-8-22 16:44
以下是引用wonderfeng在2006-8-22 0:05:00的发言:


报错啊!

isnull 高亮 错误信息:编译错误,错误的参数号或无效的属性赋值

难道你的数据库不能使用isnull?
作者: andymark    时间: 2006-8-22 18:54
以下是引用wonderfeng在2006-8-22 0:15:00的发言:


可是还是有两种情况没考虑到

1.回收单位为空

2.回收单位编号不在“加工单位”表中……

     可以按上面的方法加多一层判断呀
作者: wonderfeng    时间: 2006-8-22 20:35
可以用了

谢谢啊




欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3