以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  表A表B的显示代码  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=86111)

--  作者:seal51
--  发布时间:2016/6/11 0:50:00
--  表A表B的显示代码

表A里有个编号, 表B里也有个相同的编号, 打开表B, 表B只显示同表A编号不相同的编号, 同表A里相同的编号不显示, 代码如何写?

 

比如表A里编号有 X001, 表B里编号有X001, X002, 打开表B只显示编号X002, 不显示编号X001


--  作者:大红袍
--  发布时间:2016/6/11 14:31:00
--  
DataTables("表B").LoadFilter = "编号 not in (\'" & DataTables("表A").GetComboListString("编号").replace("|", "\',\'") & "\')"
DataTables("表B").Load

--  作者:seal51
--  发布时间:2016/6/11 15:00:00
--  

谢谢老师, 代码执行后达到了效果, 但是为什么和编号相连的表达式字段不显示任何内容了??


--  作者:大红袍
--  发布时间:2016/6/12 1:40:00
--  
你表达式列的表达式是什么?具体实例说明问题。
--  作者:seal51
--  发布时间:2016/6/12 13:01:00
--  

表A表达式字段客户=表B.客户


--  作者:大红袍
--  发布时间:2016/6/12 14:51:00
--  

 表A在表B找不到对应的行,那,自然就会可能引用到表B的值。

 

 要不你不要用load,直接用筛选

 

Tables("表B").Filter = "编号 not in (\'" & DataTables("表A").GetComboListString("编号").replace("|", "\',\'") & "\')"