ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
123
返回列表 发新帖
楼主: notoky

求助,按某字段排序,但要分层进行,并子层要紧跟对应的层后显示

[复制链接]

TA的精华主题

TA的得分主题

 楼主| 发表于 2014-4-11 20:12 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
yjh_27 发表于 2014-4-11 15:27
是的,参数组合。

0P;1,我的理解是
1. 0            不排序,用于(合并单元格)分组,本次不排序
2.P;p1         含p1(可为"")的排至最后(a升序)或最前(非a降序)。P须位于“;”前、p1位于尾部
0代表不排序,可P;1,代表含有1的排到最后或最前,并没有说能去重,是否我理解错了?
1;r;0,我的理解是,1;R;n      对数字按n位取舍(n=2,保留2位小时)
对应的就是对数字按0位取舍,这个怎么理解?还是我参数对应错了?

TA的精华主题

TA的得分主题

发表于 2014-4-12 08:31 | 显示全部楼层
notoky 发表于 2014-4-11 20:12
0P;1,我的理解是
1. 0            不排序,用于(合并单元格)分组,本次不排序
2.P;p1         含p1( ...

0P;1;.
输出数组行数变,忽略含"."所在行

TA的精华主题

TA的得分主题

发表于 2014-4-12 08:36 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
这样更易于理解,也具通用性。

book2x (1).rar

43.26 KB, 下载次数: 16

TA的精华主题

TA的得分主题

 楼主| 发表于 2014-4-12 22:05 | 显示全部楼层
yjh_27 发表于 2014-4-12 08:36
这样更易于理解,也具通用性。

对着YjhSort的参数含义,我对您的两个参数设计0P;1;.和1;r;0,不是很理解,就我从参数里对应过来的含义,好像不是出来的效果。可以解释一下,参数是如何组合的嘛?
0P;1;.。是O和P;p1 的组合?但结构上又说不通,还是S;s1;s2;p1?参数中没有说明可以把含有某字符的项去除的说明吧。
1;r;0,我从参数中的理解是按数字对0位取舍,这个是什么含义?尤其中0位取舍,什么意思?数字的0位对应的是哪?
有没有这个函数更详细的说明资料,我想学习下,我感觉这函数挺有用的。谢谢了

TA的精华主题

TA的得分主题

发表于 2014-4-12 22:20 | 显示全部楼层
本帖最后由 yjh_27 于 2014-4-12 22:22 编辑
notoky 发表于 2014-4-12 22:05
对着YjhSort的参数含义,我对您的两个参数设计0P;1;.和1;r;0,不是很理解,就我从参数里对应过来的含义, ...

'参数2:   s          排序方式,多列(次)以“,”分隔。可省略,默认为:"a" 升序
'                     asc或a       升序,按字符排序  (忽略大小写)(默认)
'                     非 asc a     降序,按字符排序  (忽略大小写)
'                     1            升序,按数值排序
'                     非 1 0       降序,按数值排序
'                       1;R;n      对数字按n位取舍(n=2,保留2位小时)
'                     0            不排序,用于(合并单元格)分组,本次不排序
'                     以上参数可不在首位,与下列参数组合
'                     L;n或Len;n   按长度排序  L1或Lenasc或La     升序
'                                             非 L1或Lenasc或La   降序
'                        n=0           按字符数 Len排序(可省略,默认)
'                        n=1           按字节数 LenB排序
'                     SL;sl1;sl2   按照sl1固定长度处理字符后进行排序,sl1≠0(=0返回错误),
'                        sl1>0         截取或扩充(扩充符号sl2,可省略,默认为:" ") ,升降序同前
'                        sl1<0         忽略长度≠- sl1 所在行
'                     Sp;s1;n      按照s1符号分列 取第n个进行排序,n从0开始。升降序同前。
'                     S;s1;s2;p1   按照s1和s2两符号中间的 进行排序,p1见下一条。升降序同前。
'                     P;n;p1       含p1(可为"")的排至最后(a升序)或最前(非a降序)。只处理前后分组。
'                                   P须位于“;”前(第一子参数尾)、p1位于尾部(最末子参数)、n控制输出数组(可省略,默认为:0)
'                        n=0           输出数组行数不变(默认)
'                        n=1           输出数组行数变,忽略含p1所在行
'                        n=-1          输出数组行数变,忽略不含p1所在行
'                     P或Pin       按拼音排序 P1或Pinasc或Pa     升序
'                                             非 P1或Pinasc或Pa   降序
'                     R            随机(乱序)
'

只能上下部分组合,同一部分之间不能组合
下部分除说明的外,应居参数首位

TA的精华主题

TA的得分主题

发表于 2014-4-13 08:38 | 显示全部楼层
我感觉既然顺序事先都定好了,那直接用VLOOKUP公式将后面两列的数据导过来不就得了吗?似乎用不着VBA啊?
按某字段分层排序.jpg

TA的精华主题

TA的得分主题

发表于 2014-4-13 11:02 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
VBA万岁 发表于 2014-4-13 08:38
我感觉既然顺序事先都定好了,那直接用VLOOKUP公式将后面两列的数据导过来不就得了吗?似乎用不着VBA啊?
...

楼主要求顺序由产量定

TA的精华主题

TA的得分主题

发表于 2014-4-13 11:32 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
yjh_27 发表于 2014-4-13 11:02
楼主要求顺序由产量定

不好意思,没看楼主的最初附件,所以理解错了!

TA的精华主题

TA的得分主题

 楼主| 发表于 2014-4-13 19:06 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
yjh_27 发表于 2014-4-12 22:20
'参数2:   s          排序方式,多列(次)以“,”分隔。可省略,默认为:"a" 升序
'                   ...

谢谢,有了您的这段说明,我明白了0P;1;.的含义,请问有除了http://club.excelhome.net/thread-1090007-1-1.html这之外的说明嘛?你的这说明在上面的网址是没有的。还有1;r;0,我还是不太理解,0位取舍,什么意思?数字的0位对应的是哪?

TA的精华主题

TA的得分主题

发表于 2014-4-13 19:28 | 显示全部楼层
notoky 发表于 2014-4-13 19:06
谢谢,有了您的这段说明,我明白了0P;1;.的含义,请问有除了http://club.excelhome.net/thread-1090007-1 ...

10L 有。1L不能编辑了,无法补充。


还有1;r;0,我还是不太理解,0位取舍,什么意思?
见ROUND 说明。

数字的0位对应的是哪?
个位。
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-11-15 07:43 , Processed in 0.043152 second(s), 10 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

快速回复 返回顶部 返回列表