以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  [求助]格式化日期  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=127487)

--  作者:scmzphili
--  发布时间:2018/11/15 10:54:00
--  [求助]格式化日期

要把日期列格式化为 年月

比如 2018-10-12 格式化为 201810

 format(“日期”,yyyymm)不对,应该如何修改


--  作者:有点甜
--  发布时间:2018/11/15 10:58:00
--  

1、什么时候要格式化?

 

2、drawcell事件

 

If e.col.name = "开始日期" AndAlso e.text > "" Then

    e.text = format(cdate(e.text), "yyyy年MM月dd日")

End If


--  作者:scmzphili
--  发布时间:2018/11/15 11:00:00
--  
我之前测试过成功,后来忘记了,就是有两列,一列日期,一列是年月,输入日期2018-10-12后,年月列自动填入 201810,用的是format
--  作者:有点甜
--  发布时间:2018/11/15 11:03:00
--  

datacolchanged事件

 

If e.datacol.name = "日期" Then

    If e.newvalue = nothing then

        e.datarow("年月") = nothing

    Else

        e.datarow("年月") = Format(e.newvalue, "yyyyMM")

    End If

End If


--  作者:scmzphili
--  发布时间:2018/11/15 11:18:00
--  

请老师再帮忙看看该如何修改 datacolchanged事件

 

Select e.DataCol.Name
    Case "日期"
        Dim lb As String ="Y"
        If e.DataRow("单号").StartsWith(lb) = False \'如果单据编号前缀不符
            Dim idx As Integer = e.DataRow("_Identify")
            e.DataRow("单号") = lb & Format(idx,"000000")
            e.DataRow("年月") = Format(e.newvalue,"YYYYMM")
        End If
End Select


--  作者:有点甜
--  发布时间:2018/11/15 11:21:00
--  

Select e.DataCol.Name
    Case "日期"
        Dim lb As String ="Y"
        If e.DataRow("单号").StartsWith(lb) = False \'如果单据编号前缀不符
            Dim idx As Integer = e.DataRow("_Identify")
            e.DataRow("单号") = lb & Format(idx,"000000")
        End If
        If e.newvalue = Nothing Then
            e.DataRow("年月") = Nothing
        Else
            e.DataRow("年月") = Format(e.newvalue, "yyyyMM")
        End If     
End Select


--  作者:scmzphili
--  发布时间:2018/11/15 11:36:00
--  

谢谢!

这个代码有个问题,年月是空白的话可以改写,不是空白不能改写。或者之前按照2018-10-12输入,会自动填入201810,如果改为2018-11-12,不能同步更新为201811


--  作者:有点甜
--  发布时间:2018/11/15 11:40:00
--  
6楼代码没问题。
--  作者:scmzphili
--  发布时间:2018/11/15 12:23:00
--  

谢谢,麻烦帮我看看这个代码,关联订单日期 不能同步更新的原因,比如改了父表,子表不能同步更改。也导不出正确的年月

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:test.table


--  作者:有点甜
--  发布时间:2018/11/15 14:51:00
--  
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:test (3).table