以文本方式查看主题

-  易表在线答疑  (http://egrid2000.com/dvbbs/index.asp)
--  用户社区  (http://egrid2000.com/dvbbs/list.asp?boardid=2)
----  [求助]如何按要求删除行?  (http://egrid2000.com/dvbbs/dispbbs.asp?boardid=2&id=18652)

--  作者:郑颖
--  发布时间:2009/12/6 23:47:00
--  [求助]如何按要求删除行?
请问我有表1和表2,其中表1有一列的名称与表2是相同的(内容不一样);我要用公式自动删除表1中符合条件的行。要求是表2中相同列有相同的内容时删除表1的符合条件的行。
就好比公式:DelFor("表1","第一列","=",[表2!第四列]);
但是表2中的第四列的内容数量很多,而且有很多是重复的.
--  作者:Czy
--  发布时间:2009/12/7
--  
AddCol("表1","x",3,false) And evalfor("表1","x","FindRow(""表2"",""第一列"",""="",[第一列])>0") And DelFor("表1","x","=",-1) And DeleteCol("表1","x")
--  作者:老宋
--  发布时间:2009/12/7 0:10:00
--  
删除行要对所删除的行精确界定,在当前表删除其他表的数据,不能使用类似[]的列名称,要么是""格式的字符,要么是[%AAA%]格式的变量,或者是用><=连接的数值.
你如果在表二中操作删除表一的操作,就要把条件具体化.
--  作者:郑颖
--  发布时间:2009/12/7 9:03:00
--  
感谢!问题已经解决,但我还是有点明白;在为表1的新增列[X]附值时的公式:evalfor("表1","x","FindRow(""表2"",""第一列"",""="",[第一列])>0") 如何理解?主要在于[X]列是逻辑型。能帮忙解释一下吗?上面的公式中它所取得的值是不是都大于0,等于0都不可能。这是我的个人理解。
--  作者:wjq1072
--  发布时间:2009/12/7 9:26:00
--  
AddCol("表1","x",3,false) And
evalfor("表1","x","FindRow(""表2"",""第一列"",""="",[第一列])>0") And
DelFor("表1","x","=",-1) And
DeleteCol("表1","x")
1、在表1增加一隐藏的逻辑列X;
2、在X列执行重算公式:在表2中查找如果表2第一列与表1第一列有相同内容,则为-1,否则为0;
3、删除表1中X列为-1的行;
4、删除X列。