以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]在窗口中对关联表进行查询的代码  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=73972)

--  作者:liuxianjie1980
--  发布时间:2015/8/30 12:03:00
--  [求助]在窗口中对关联表进行查询的代码

Forms("客户的合同窗口")中有一个关联表,名称见下面代码

 

Forms("客户的合同窗口")中有一个查询按钮,代码如下:

 

Dim r As Integer
r = Tables("客户的客户窗口_客户一览表.合同一览表").FindRow("[合同编号] = \'%" & Forms("客户的合同窗口").Controls("TextBox1").Text & "%\'")
If r >= 0 Then \'如果找到的话
    Tables("客户的客户窗口_客户一览表.合同一览表").Position = r
End If

 

想通过上述代码找到关联表中的相关记录,但是代码出错:找不到tables(。。。)

 

帮忙看一下

[此贴子已经被作者于2015/8/30 12:20:20编辑过]

--  作者:大红袍
--  发布时间:2015/8/30 12:25:00
--  
关联表,直接写表名即可,窗口名不用谢
--  作者:liuxianjie1980
--  发布时间:2015/8/30 12:29:00
--  

测了一下r值,r=-1

 

为何找不到呢?


--  作者:liuxianjie1980
--  发布时间:2015/8/30 12:31:00
--  

Dim r As Integer
r = Tables("客户一览表.合同一览表").FindRow("[合同编号] = \'%" & e.Form.Controls("TextBox1").Text & "%\'")
MessageBox.show(r)
If r >= 0 Then \'如果找到的话
    Tables("客户一览表.合同一览表").Position = r
End If

 

这样改了以后,还是找不到,r=-1


--  作者:大红袍
--  发布时间:2015/8/30 12:32:00
--  
找不到,就是条件不对或者没有数据。
--  作者:liuxianjie1980
--  发布时间:2015/8/30 12:33:00
--  

Dim r As Integer
r = Tables("合同一览表").FindRow("[合同编号] = \'%" & e.Form.Controls("TextBox1").Text & "%\'")
MessageBox.show(r)
If r >= 0 Then \'如果找到的话
    Tables("合同一览表").Position = r
End If

 

这样也还是找不到,无语了


--  作者:大红袍
--  发布时间:2015/8/30 12:33:00
--  
以下是引用大红袍在2015/8/30 12:32:00的发言:
找不到,就是条件不对或者没有数据。

 

+1


--  作者:liuxianjie1980
--  发布时间:2015/8/30 12:39:00
--  
是不是要制定主表什么的,应该不需要吧?
--  作者:liuxianjie1980
--  发布时间:2015/8/30 12:39:00
--  
数据肯定是有的,输入查询条件的合同编号时,就是为了防错,直接copy的
--  作者:liuxianjie1980
--  发布时间:2015/8/30 12:40:00
--  

也测了文本框的值,是有的