以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  改变时间格式 感谢 感谢  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=105438)

--  作者:yangwenghd
--  发布时间:2017/8/19 13:09:00
--  改变时间格式 感谢 感谢

图片点击可在新窗口打开查看此主题相关图片如下:qq截图20170819130729.jpg
图片点击可在新窗口打开查看
可以帮忙实现一个这样的功能吗?感谢 感谢 
改变带有“-->”的行。
改变为  行的 第一个“:”(也就是第三个字符)为“[”,
第12的个字符改为“]”,后面的删除。
当然4和5的个字符 等于 本身字符数量+1和2字符的数量*60,(其实1和2是小时,需要转换为分钟。)
然后“,”(逗号部分)改为小数点“.”感谢 感谢 

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



--  作者:有点蓝
--  发布时间:2017/8/19 14:21:00
--  
Tables("表A").Filter = "输入时间 like \'%-->%\'"
For Each r As Row In Tables("表A").Rows
    Dim sr() As String = r("输入时间").split(new Char() {":",","})
    r("输出时间") = CExp("[{0}:{1}.{2}]",cstr(val(sr(0)) * 60 + val(sr(1))).PadLeft(2,"0"),sr(2),sr(3).SubString(0,2))
Next

--  作者:yangwenghd
--  发布时间:2017/8/19 15:08:00
--  
感谢 感谢 可以了  谢谢 ,能在问问 有什么办法可以筛选出纯数字的行吗? 感谢感谢 
[此贴子已经被作者于2017/8/19 15:15:50编辑过]

--  作者:有点蓝
--  发布时间:2017/8/19 15:32:00
--  
使用辅助列

If e.DataCol.Name = "输入时间" Then
    Dim i As Integer = 0
    If Integer.TryParse(e.NewValue,i) = False Then
        e.DataRow("第三列") = -1
    End If
End If

筛选
Tables("表A").Filter = "第三列 <> \'-1\' or 第三列 is null"

--  作者:yangwenghd
--  发布时间:2017/8/19 15:40:00
--  
第一段放在那里啊?
我担心我会说错,我可以把输入时间列的行全是纯数字的行筛选出来吗?感谢 感谢 

--  作者:有点蓝
--  发布时间:2017/8/19 15:41:00
--  
datacolchanged
--  作者:yangwenghd
--  发布时间:2017/8/19 16:02:00
--  
没有用呢?麻烦了 感谢 感谢 
--  作者:有点蓝
--  发布时间:2017/8/19 16:08:00
--  
截图说明问题
--  作者:yangwenghd
--  发布时间:2017/8/19 16:12:00
--  
一没报错,就是没有如何反映。
就是筛选出这是只有数字的行,感谢 感谢 

图片点击可在新窗口打开查看此主题相关图片如下:qq截图20170819161018.jpg
图片点击可在新窗口打开查看


--  作者:有点蓝
--  发布时间:2017/8/19 16:16:00
--  
把代码的列名改为自己正确的列名,然后重置时间输入列