以文本方式查看主题

-  易表在线答疑  (http://egrid2000.com/dvbbs/index.asp)
--  用户社区  (http://egrid2000.com/dvbbs/list.asp?boardid=2)
----  请帮忙看一下列操作公式设置为何不成功?  (http://egrid2000.com/dvbbs/dispbbs.asp?boardid=2&id=40484)

--  作者:newuser
--  发布时间:2018/2/11 17:17:00
--  请帮忙看一下列操作公式设置为何不成功?

如附件,希望,如果 当月第N次记录 为2,的时候,则表2的数据不变化。如果 当月第N次记录的数据不是2,则删除表2前一日的记录所在行。我在表1的数据列,书写列操作公式,发现不同的书写方法,结果不一样,不知道问题出在哪里,特地把2个错误的(不能实现希望的)和正确的写出来,请高手指点其中的区别。谢谢。

 

错误的列操作公式:


If([同月第N次记录] = 2 , True ,DelFor("表2","日期", "=" ,Cell(Row - 1,"日期")) )


If([同月第N次记录] <> 2  ,DelFor("表2","日期", "=" ,Cell(Row - 1,"日期")), True )

 

正确的列操作公式:
If([同月第N次记录] = 1 Or[同月第N次记录] > 2  ,DelFor("表2","日期", "=" ,Cell(Row - 1,"日期")), True )

 下载信息  [文件大小:   下载次数: ]
点击浏览该文件:eee.egd


--  作者:lyang70
--  发布时间:2018/4/18 13:05:00
--  

If([同月第N次记录] = 2 , True ,DelFor("表2","日期", "=" ,Cell(Row - 1,"日期")) )


        If([同月第N次记录] <> 2  ,DelFor("表2","日期", "=" ,Cell(Row - 1,"日期")), True )


If([同月第N次记录] = 1 Or[同月第N次记录] > 2  ,DelFor("表2","日期", "=" ,Cell(Row - 1,"日期")), True )


——上面三个公式意思一样“当同月第N次记录的数据不是2,则删除表2前一日的记录所在行”,经测试验证是能够正常按命令执行!增加一行试试就知道了,因为该列还存在刷新公式If(Text([日期]) = "","",(CountFor(GridName,"日期", ">=" ,EOMonth([日期],-1)+1,"日期", "<=" ,EOMonth([日期],0),1,Row)))。