以文本方式查看主题

-  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=97407)

--  作者:jick0526
--  发布时间:2017/3/11 17:48:00
--  当系统日期大于A列的日期时,B列显示未过期,小于则显示过期
狐爸,请问下,当系统日期大于A列的日期时,B列显示未过期,小于则显示过期,B列会随着系统日期的变动而变动,假如我更改了系统日期,B列会自行判断而变动,之前的代码试了下更改系统日期后,B列没任何反应,只会随着A列的变动而变动,我是想让会随着系统的日期变动而变动,代码能从新帮我写下吗?谢谢!
[此贴子已经被作者于2017/3/12 1:16:16编辑过]

--  作者:wyz20130512
--  发布时间:2017/3/11 17:53:00
--  
Select Case e.DataCol.Name
    Case "A列"
        If e.DataRow("A列") > Date.Today() Then
            e.DataRow("B列") = "未过期"
        End If
End Select

--  作者:jick0526
--  发布时间:2017/3/11 18:31:00
--  
老师,这代码放哪个事件里,谢谢!
--  作者:jick0526
--  发布时间:2017/3/12 0:13:00
--  
Select Case e.DataCol.Name
    Case "A列"
        If e.DataRow("A列") > Date.Today() Then
            e.DataRow("B列") = "未过期"
        End If
End Select
老师,上面这段代码如果反过来,是如果系统时间大于A列时间,则B列显示出售,如果系统时间小于A列,则B列显示未出售,就是说B列的显示会随着系统时间大于或小于A列的时间而变动,谢谢
--  作者:wyz20130512
--  发布时间:2017/3/12 11:12:00
--  
表的DataColChanged事件代码:

Select Case e.DataCol.Name
    Case "A列"
        If e.DataRow("A列") > Date.Today() Then
            e.DataRow("B列") = "未出售"
else
    e.DataRow("B列") = "出售"
        End If
End Select

--  作者:jick0526
--  发布时间:2017/3/12 13:23:00
--  
表的DataColChanged事件代码:

Select Case e.DataCol.Name
    Case "A列"
        If e.DataRow("A列") > Date.Today() Then
            e.DataRow("B列") = "未出售"
else
    e.DataRow("B列") = "出售"
        End If
End Select
对不起,老师,可能是我没说清楚,我是想让B列会随着系统日期的变动而变动,假如我更改了系统日期,B列会自行判断而变动,上面的代码试了下更改系统日期后,B列没任何反应,只会随着A列日期的变动而变动,我是想让会随着系统的日期变动而变动,就是把我把电脑的系统日期改了后,B列会自动改成出售,或者未出售,谢谢!

--  作者:wyz20130512
--  发布时间:2017/3/12 13:41:00
--  
不知道你所说的逻辑是什么 ?为什么要这么做呢?
[此贴子已经被作者于2017/3/12 13:41:38编辑过]

--  作者:jick0526
--  发布时间:2017/3/12 14:03:00
--  
比如说一个产品A列过期时间是10月1号,这时系统时间是9月25日,B列显示未过期,但是随着时间一天天过去,系统时间已经变成10月2日了,但B列不能识别系统时间已更改,还是写着未过期,

或者有没有办法专门建一列,是跟系统时间会同步到也可以,系统时间变了,这列时间也会会变,就是会一直保持跟系统时间同步更新,我觉得这个功能在很多地方都会用到

--  作者:有点色
--  发布时间:2017/3/12 19:56:00
--  

如果只是显示,可以写到drawcell事件

 

Select Case e.Col.Name
    Case "B列"
        If e.Row("A列") > Date.Today() Then
            e.Text = "未出售"
        Else
            e.Text = "出售"
        End If
End Select