Foxtable(狐表)用户栏目专家坐堂 → 一周排序问题


  共有7263人关注过本帖树形打印复制链接

主题:一周排序问题

帅哥哟,离线,有人找我吗?
cyrollin
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:822 积分:5782 威望:0 精华:0 注册:2015/2/3 22:19:00
一周排序问题  发帖心情 Post By:2015/3/9 14:30:00 [显示全部帖子]

列表如下:

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

在 项目属性的  afterloadproject, 加入以下代码:

Tables("表名").Sort = "固定时间"

会出现混乱的排序,怎么样才能有序排序呢,如:
星期一
星期二
星期三
。。。
星期日


 回到顶部
帅哥哟,离线,有人找我吗?
cyrollin
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:822 积分:5782 威望:0 精华:0 注册:2015/2/3 22:19:00
  发帖心情 Post By:2015/3/9 14:35:00 [显示全部帖子]

我试试,3Q for you tips

 回到顶部
帅哥哟,离线,有人找我吗?
cyrollin
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:822 积分:5782 威望:0 精华:0 注册:2015/2/3 22:19:00
  发帖心情 Post By:2015/3/9 14:51:00 [显示全部帖子]

以下是引用有点甜在2015/3/9 14:31:00的发言:
不能根据此列排序,必须额外的加一列排序列,把星期几改成数字

tiantian 老师,我用SUBSTRING函数,把星期一,星期二。。。换成 一,二,三。。。日,但没想得我这样简单。 额外的用了这个列,也不能正常排序。并且星期日 变成 日,更不能排序。 


帮我下,谢谢


 回到顶部
帅哥哟,离线,有人找我吗?
cyrollin
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:822 积分:5782 威望:0 精华:0 注册:2015/2/3 22:19:00
  发帖心情 Post By:2015/3/9 14:56:00 [显示全部帖子]

LSY老师的,只是用不同的样式标示每一天,不能达到排序的效果。。。。。

 回到顶部
帅哥哟,离线,有人找我吗?
cyrollin
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:822 积分:5782 威望:0 精华:0 注册:2015/2/3 22:19:00
  发帖心情 Post By:2015/3/9 15:12:00 [显示全部帖子]

LSY老师的这个代码我不知道放哪里?

在增加的这一列,手动输入了数字, 能不能写个代码自动添入,前一列输入星期一,后一列就自动为1,这样子


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


 回到顶部
帅哥哟,离线,有人找我吗?
cyrollin
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:822 积分:5782 威望:0 精华:0 注册:2015/2/3 22:19:00
  发帖心情 Post By:2015/3/9 15:18:00 [显示全部帖子]

以下是引用lsy在2015/3/9 15:02:00的发言:
DrawCell事件:

If e.Col.Name = "固定时间" AndAlso e.Row(e.Col) >= 1 AndAlso e.Row(e.Col) <= 7 Then
    e.Text = WeekDayName(e.Row(e.Col))
End If

输入字符串的格式不正确。[此贴子已经被作者于2015/3/9 15:14:39编辑过]
.NET Framework 版本:2.0.50727.5485
Foxtable 版本:2014.11.11.1
错误所在事件:表,客户数据,DrawCell
详细错误信息:
调用的目标发生了异常。
从字符串“星期一”到类型“Double”的转换无效。

LSY ,试用了您的代码,出现了这个错误



 回到顶部
帅哥哟,离线,有人找我吗?
cyrollin
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:822 积分:5782 威望:0 精华:0 注册:2015/2/3 22:19:00
  发帖心情 Post By:2015/3/9 15:20:00 [显示全部帖子]

是字符类型,LSY

 回到顶部
帅哥哟,离线,有人找我吗?
cyrollin
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:822 积分:5782 威望:0 精华:0 注册:2015/2/3 22:19:00
  发帖心情 Post By:2015/3/9 15:25:00 [显示全部帖子]

以下是引用cyrollin在2015/3/9 15:20:00的发言:
是字符类型,LSY

If e.DataCol.Name = "固定时间" Then

    If e.NewValue = Nothing Then

        e.DataRow("固定排序") = Nothing

    Else

     Select Case e.newValue

     Case "星期一"

        e.DataRow("固定排序")=1

     Case "星期二"

        e.DataRow("固定排序")=2

     Case "星期三"

        e.DataRow("固定排序")=3

     Case "星期四"

        e.DataRow("固定排序")=4

     Case "星期五"

        e.DataRow("固定排序")=5

     Case "星期六"

        e.DataRow("固定排序")=6

     Case "星期日"

        e.DataRow("固定排序")=7

        End Select

    End If

End If


谢谢bin,然后我把这个列隐藏起来,搞定,,,,,谢谢各位老师!


 回到顶部
帅哥哟,离线,有人找我吗?
cyrollin
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:822 积分:5782 威望:0 精华:0 注册:2015/2/3 22:19:00
  发帖心情 Post By:2015/3/9 15:43:00 [显示全部帖子]

以下是引用lsy在2015/3/9 15:33:00的发言:
如果不改数据类型,就这样:

If e.Col.Name = "固定时间" AndAlso e.Row.IsNull(e.Col) = False AndAlso CInt(e.Row(e.Col)) >= 1 AndAlso CInt(e.Row(e.Col)) <= 7 Then
    e.Text = WeekDayName(CInt(e.Row(e.Col)))
End If

谢谢BIN老师的热心,用了上面的代码,出现这样的提示:


.NET Framework 版本:2.0.50727.5485

Foxtable 版本:2014.11.11.1

错误所在事件:表,客户数据,DrawCell

详细错误信息:

调用的目标发生了异常。

从字符串“星期二”到类型“Integer”的转换无效。

输入字符串的格式不正确。



 回到顶部
帅哥哟,离线,有人找我吗?
cyrollin
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:822 积分:5782 威望:0 精华:0 注册:2015/2/3 22:19:00
  发帖心情 Post By:2015/3/9 16:10:00 [显示全部帖子]

哦,我用了18楼的方法,解决了,谢谢!

的确解决问题的方式很多,

 回到顶部
总数 11 1 2 下一页