以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  不能正确排序  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=65826)

--  作者:cyrollin
--  发布时间:2015/3/24 9:33:00
--  不能正确排序
afteropenproject 加入了排序代码: 
Tables("派工表").Sort = "日期排序,日期,时间"

也单独做了排序按钮:
Tables("派工表").Sort = "日期排序,日期,时间"

但还是不能正确排序,请看图:

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

求指导,谢谢, 附文件:




 
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目1.rar

[此贴子已经被作者于2015/3/24 9:33:58编辑过]

--  作者:狐狸爸爸
--  发布时间:2015/3/24 9:35:00
--  

你的日期可能有事件部分,只是日期列默认只显示时间而已


--  作者:cyrollin
--  发布时间:2015/3/24 9:38:00
--  
有事件部份,怎么解决呢?
--  作者:狐狸爸爸
--  发布时间:2015/3/24 9:47:00
--  

错别字,应该是:

 

你的日期可能有时间部分,只是日期列默认只显示时间而已

 

解决办法:

 

在命令窗口执行:

 

For Each dr As DataRow In DataTables("表名").DataRows
    dr("日期") = dr("日期").Date()
Next

DataTables("表名").Save()


--  作者:cyrollin
--  发布时间:2015/3/24 10:56:00
--  
哦,我在命令窗口执行了,但没起作用:


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


--  作者:狐狸爸爸
--  发布时间:2015/3/24 10:59:00
--  

执行后,重新排序。

如果不行,只能用例子说话了。


--  作者:cyrollin
--  发布时间:2015/3/24 11:02:00
--  
例子已经在第一楼,谢谢
--  作者:狐狸爸爸
--  发布时间:2015/3/24 11:16:00
--  

你把时间列的显示格式改为DateTime,将其拉宽,看看其中的内容,就知道怎么回事了,有的是1899年,有的是1900年。

建议你时间列用字符型或者时段型。


--  作者:cyrollin
--  发布时间:2015/3/24 11:41:00
--  
以下是引用狐狸爸爸在2015/3/24 11:16:00的发言:

你把时间列的显示格式改为DateTime,将其拉宽,看看其中的内容,就知道怎么回事了,有的是1899年,有的是1900年。

建议你时间列用字符型或者时段型。

有的是1899年,有的是1900年  : 怎么会是那样?

建议你时间列用字符型或者时段型: 如果用字符型,怎么能排序呢?


--  作者:狐狸爸爸
--  发布时间:2015/3/24 11:45:00
--  

1、不知道你的时间是怎么得来的,如果是用代码计算得出的,你可以修改代码,统一为1900年,不会改的话,你可以贴出你的这段代码,我帮你改一下

 

2、字符列一样可以排序,只要严格按照两位数的小时和两位数的分钟即可。

[此贴子已经被作者于2015/3/24 11:45:53编辑过]