以文本方式查看主题

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

--  作者:q2520
--  发布时间:2018/3/30 23:52:00
--  [求助]统计字符数量
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:信息站_201803302348.zip


图片点击可在新窗口打开查看此主题相关图片如下:kq.png
图片点击可在新窗口打开查看


--  作者:有点蓝
--  发布时间:2018/3/31 9:00:00
--  
考勤表datacolchanged事件

If e.DataCol.Name.Contains("日期") Then
    Dim 早 As Integer
    Dim 带早 As Integer
    Dim 中 As Integer
    Dim 带中 As Integer
    Dim 夜 As Integer
    Dim 带夜 As Integer
    For i As Integer = 1 To 10
        Select Case e.DataRow("日期_" & i)
            Case "早"
                早 = 早+1
            Case "带早"
                早 = 早+1
                带早 = 带早+1
        End Select
    Next
    e.DataRow("早") = 早
    e.DataRow("带早") = 带早
End If

剩余的代码自己补全

--  作者:q2520
--  发布时间:2018/3/31 15:11:00
--  
上个问题 行了   十分感谢   
现在还有个问题

图片点击可在新窗口打开查看此主题相关图片如下:时间.png
图片点击可在新窗口打开查看
计时  那一列想要那种效果   怎么改代码
Select Case e.DataCol.name
    Case "入井时间","升井时间"
        Dim dr As DataRow = e.DataRow
        If dr.IsNull("入井时间") Or dr.IsNull("升井时间") Then
           dr("计时") = Nothing
        Else
            Dim tp As TimeSpan
            tp = dr("升井时间") - dr("入井时间")
            dr("计时") = tp.TotalSeconds()   \'真正的时段型数据要转换为秒数,才能存入时段列
        End If
End Select

--  作者:有点蓝
--  发布时间:2018/3/31 15:40:00
--  
DrawCell事件:http://www.foxtable.com/help/scr/0656.htm

源数值除以3600就是小时数,余数除以60就是分钟数

--  作者:q2520
--  发布时间:2018/3/31 15:47:00
--  
能不能说的  通俗易懂点    还有那个DrawCell事件  和我要的那个效果  没什么关系吧  
第二行那个时间   如果用代码计算出来   是错误的    所以才让你给说下怎么改代码

--  作者:有点蓝
--  发布时间:2018/3/31 16:18:00
--  
3楼计算结果没有问题啊有什么问题
--  作者:q2520
--  发布时间:2018/3/31 16:51:00
--  
升井时间  - 入井时间
07:30 - 23:30  = -16
  只要是跨0点的 都有问题


--  作者:有点蓝
--  发布时间:2018/3/31 17:00:00
--  
单纯时间是没有办法计算的,加上日期。

还会不会出现跨2天或者以上的情况呢?

--  作者:q2520
--  发布时间:2018/3/31 17:06:00
--  
不会  但是  计时列  显示的是格式是   00:00     这就是我最开始问的问题  能不能格式是    00小时00分
--  作者:有点蓝
--  发布时间:2018/3/31 17:16:00
--  
不能,全部是0在数据库其实表示空值。最好使用完整的日期时间格式,可以在drawcell事件隐藏日期的显示