excel出现中文乱码的解决教程-英雄云拓展知识分享
125
2023-11-07
【摘要】 本书摘自《Excel VBA跟卢子一起学早做完,不加班(实战进阶版)》一书中第1章,第1节,陈锡卢、李应钦著。
1.6 数据排序:RangeSort
1.6.1Range.Sort 排序运用
在 Excel中,排序也是一个经常用到的操作,不管是单一的数据排序或者筛选后的排序, 甚至是数据透视表中也会用到排序功能,在VBA 中排序功能对应了 Range.Sort, 其语法与主 要参数如下所列。Range.Sort 方法参数说明如表1-12所示。
对区域值进行排序
Range.Sort(Key1,Orderl,Key2,Type,Order2,Key3,Order3,Header,OrderCustom,MatchCase,Orientation, SortMethod,DataOption1,DataOption2,DataOption3)
无言 :Range.Sort方法的所有参数都是可选的,并根据每个参数的设置排序。现以一个示 例进行代入——货运费用清单排序。具体过程如代码1-27所示。
代码1-27 单条件排序
001|Sub Rng_Sort_010
002| Dim Rng As Range
003| With Worksheets(1).Copy(After:=Worksheets(1))
004| Set Rng =Range("A1").CurrentRegion
0051 Rng.Sort Header:=xIYes,Key1:=Rng.Columns(2),Orderl:=xlAscending
006| End With
0071 Range("Al:0178").Sort Key1:=Range("B1"),Orderl:=xIAscending,Header:=xlYes
008|End Sub
(1)代码1 - 27示例过程首先定义了Rng 变量,并通过 Worksheets(1).Copy(After:= Worksheets(1)) 工作表1复制副表并放置在其后,并将副表A1 连续区域赋值给 Rng变量作为 Range.Sort方法的 Range 对象表达式。
(2)Rng.Sort Header:=XIYes,Key1:=Rng.Columns(2),Orderl:=XIAscending 语句为指定排 序操作。其中 Header参数虽然为可选,但是对于实际排序是必需的,如果忽略该参数将会造 成标题参与排序,导致标题跑位,所以必需设置参数;接着赋值第1个排序字段指定 Rng 区 域中的第2列( .Columns(2)) 为排序关键列,并将Order1 参数排序方式设置为升序。
? 皮蛋:那下面那句代码干什么用?
无言:其实该句的意思在与上面作用基本一样,直接写明了排序的具体区域,并将B 列作 为排序的关键字段。
皮蛋: 那B1和Columns(2)有差别吗?
无言:因为已经限制了Header 参数第1行为标题,所以此处无差别,但是如果没 有设置Head er参数,就必需将标题行置于排序区域外,例如Range("A1:0178") 变更为 Range("A2:O178"),B1 和Columns(2) 保持不变即可。代码1-28所示为2个Key 进行排序的 过程。
代 码 1 - 2 8 双 条 件 排 序
001|Sub Rng_Sort_020
002| Dim Rng As Range
003| With Worksheets(1).Copy(After:=Worksheets(1))
004 Set Rng=Range("A1"),CurrentRegion
005] Rng.Sort Header:=xlYes,_
006| Key1:=Rng.Columns(2),Order1:=xlAscending,Key2:=Rng.Columns(15),
Order2:=xIDescending
007| End With
008|End Sub
Range.Sort 排序参数中的 Keyl~Key3 和 Orderl~Order3 参数都用于设置需要排序的关键字 段及该字段采用升序或降序;DataOption1~DataOption3 参数则是当遇到排序的单元格中存在文 本数字是将这些数字作为文本排序,还是直接按照数字大小进行排序。
还有MatchCase 、Orientation 和 SortMethod 参数也都比较好理解,是否区分字母大小写进 行排序、是按行或按列排序、中文是要按拼音还是其笔画顺序排序。
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们 18664393530@aliyun.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~