Foxtable(狐表)用户栏目专家坐堂 → [求助]增加列后排序问题


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

主题:[求助]增加列后排序问题

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


加好友 发短信
等级:幼狐 帖子:52 积分:873 威望:0 精华:0 注册:2012/2/9 16:16:00
[求助]增加列后排序问题  发帖心情 Post By:2021/12/6 10:35:00 [只看该作者]

Dim dts() As String = {"表A","表B","表C","表D"}
For Each dt As String In dts
    Dim nms As List(of String()) = DataTables(dt).GetValues("A|B|C") 
    For Each nm As String() In nms
        If DataTables("汇总").DataCols.Contains(nm(0) & "_" & nm(1) & "_" & nm(2)) = False Then          
                DataTables("汇总").DataCols.Add(nm(0) & "_" & nm(1) & "_" & nm(2),Gettype(String))         
        End If
    Next
Next

汇总表中后面增加的列不会和前面的列组成多层表头,如需要将增加的列按nm(0)、nm(1)进行排序,例如A1_1_**,A1_2_**...A2_1_**,A2_2_**...
应该如何修改

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


加好友 发短信
等级:超级版主 帖子:109720 积分:558310 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/12/6 11:17:00 [只看该作者]

{"表A","表B","表C","表D"}几个表的数据是怎么样的,添加列后的表列又是怎么样的?截图说明

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


加好友 发短信
等级:幼狐 帖子:52 积分:873 威望:0 精华:0 注册:2012/2/9 16:16:00
  发帖心情 Post By:2021/12/6 15:47:00 [只看该作者]


图片点击可在新窗口打开查看此主题相关图片如下:增加列2.jpg
图片点击可在新窗口打开查看

图片点击可在新窗口打开查看此主题相关图片如下:增加列.jpg
图片点击可在新窗口打开查看
以下是引用有点蓝在2021/12/6 11:17:00的发言:
{"表A","表B","表C","表D"}几个表的数据是怎么样的,添加列后的表列又是怎么样的?截图说明


图片点击可在新窗口打开查看此主题相关图片如下:数据样式.jpg
图片点击可在新窗口打开查看

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


加好友 发短信
等级:超级版主 帖子:109720 积分:558310 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/12/6 15:51:00 [只看该作者]

表结构里的列不都是按顺序的吗?实际要什么效果

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


加好友 发短信
等级:幼狐 帖子:52 积分:873 威望:0 精华:0 注册:2012/2/9 16:16:00
  发帖心情 Post By:2021/12/6 16:08:00 [只看该作者]


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

图片点击可在新窗口打开查看此主题相关图片如下:图2.jpg
图片点击可在新窗口打开查看
图1:A10_后面就到了A2_,A1_没有在A2_前面;
图2:再出现的A10_,A2_,A7_等也没有和前面的组成多层表头
想要的效果是既能自动组成多层表头,又能按小区分店号进行排序,例如
A1_**1_##,A1_**2_##,A1_**3_##....A2_**1_##,A2_**2_##,A2_**3_##,
[此贴子已经被作者于2021/12/6 16:09:47编辑过]

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


加好友 发短信
等级:超级版主 帖子:109720 积分:558310 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/12/6 16:56:00 [只看该作者]

1、字符串是从左到右排序的,所以“A1”比“A10小”,“A10”比“A2”小,如果要字符串按数值排序,需要补齐,比如“A1”改为“A01”、“A2”改为“A02”,就可以按"A01、A02、....、A10"正常排序了。

2、相同的前缀才可以合并多层表头,比如:“A10_01”和“A10_02”,这种是无法合并的:“A10_01”和“A07_02”


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


加好友 发短信
等级:幼狐 帖子:52 积分:873 威望:0 精华:0 注册:2012/2/9 16:16:00
  发帖心情 Post By:2021/12/6 17:59:00 [只看该作者]

以下是引用有点蓝在2021/12/6 16:56:00的发言:
1、字符串是从左到右排序的,所以“A1”比“A10小”,“A10”比“A2”小,如果要字符串按数值排序,需要补齐,比如“A1”改为“A01”、“A2”改为“A02”,就可以按"A01、A02、....、A10"正常排序了。

2、相同的前缀才可以合并多层表头,比如:“A10_01”和“A10_02”,这种是无法合并的:“A10_01”和“A07_02”

1.图1A1_开头的列并没有排在A10_和A2_之间啊 2.例如图2中A10_开头的怎么能和图1中A10_开头的排在一起?如果排在一起就可以组成多层表头,列多的情况下不可能手动去上下移动列

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


加好友 发短信
等级:超级版主 帖子:109720 积分:558310 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/12/6 20:24:00 [只看该作者]

麻烦认真看看6啊,都说【“A1”比“A10小”,“A10”比“A2”小】,那么肯定A10在中间的。搞不懂就上传实例吧

 回到顶部