问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

Excel VBA 怎么排序

发布网友 发布时间:2022-04-26 20:28

我来回答

4个回答

热心网友 时间:2023-10-29 15:35

  1、带参数名引用,如: key1:=Range("G3")
  2、 参数位置引用,即按照上述Sort命令的参数顺序直接应用,
  如: Range("A1:I19").Sort key1:=Range("G3") 即第1位置参数即为key1
  3、Order1、Order2、Order3
  这些Order是排序的顺序模式指定参数。即: A-Z升序、或Z-A降序
  参数的模式名称为:
  A-Z升序= xlAscending 或直接=1
  Z-A降序= xlDescending 或直接=2
  带参数名引用时:
  Order1:=xlAscending 或 Order1:= 1
  参数位置引用时,紧跟key后面。(但注意key2和Order2之间要隔一个Type参数)
  4、Header
  即是否有标题行参数,一共有3个值:
  Header:= xlGuess=0 或xlYes=1 或 xlNo=2
  即=xlGuess、或=0时,工作表自己判断
  =xlYes、或=1时,强制第1行为列标题,即第1行【不参与排序】
  =xlNo、或=2时,强制没有列标题。即第1行【也参与排序】
  带参数名引用时:
  如: Header:= xlGuess
  参数位置引用时,在第7个逗号之后。
  (如果key只有1个时,要连续空6个逗号,
  如:Range("A1:I19").Sort Range("A1"), 1, , , , , , 2 (order1之后连续写6个逗号)
  5、MatchCase 是否匹配大小写
  MatchCase:=False 、或=0 不区分大小写
  MatchCase:=True 、或=1 区分大小写(Case Sensitive)
  6、Orientation 排序方向
  一般为同一列中从上到下各行进行排序:Orientation:= xlTopToBottom 、或=1
  如果是: 同一行中从左到右各列进行排序,则为:Orientation:= xlLeftToRight、或=2
  7、SortMethod 排序方法
  按拼音排序: SortMethod:= xlPinYin 、或=1 (Use phonetic info)
  按笔画排序: SortMethod:= xlStroke、或=2
  8、 DataOption1 按数值或按文本排序
  DataOption1:= xlSortNormal
  9、以上综合示例为: 按参数名引用:
  Range("A1:I19").Sort key1:=Range("G3"), Order1:=xlAscending, _
  Header:=xlGuess, OrderCustom:=1, MatchCase:=False, _
  Orientation:=xlTopToBottom, SortMethod:=xlPinYin, _
  DataOption1:=xlSortNormal
  直接按参数位置:
  Range("A1:I19").Sort [G3], 1, , , , , ,0, 1, 0, 1, 1,1
  或根据默认为:Range("A1:I19").Sort [G3], 1

热心网友 时间:2023-10-29 15:36

看例子吧。。。

需要定义一个公式。。

a:

=LARGE((Sheet1!$A$1:$A$15=Sheet1!A1)*(Sheet1!$B$1:$B$15),ROW(INDIRECT("1:" & COUNTIF(Sheet1!$A$1:$A$15,Sheet1!A1))))

 

再在C1输入:

=match(B1,a,0)

下拉即可。

热心网友 时间:2023-10-29 15:36

文件发送到

处理好来认领

热心网友 时间:2023-10-29 15:37

假设你的工作表名为“表”,采用如下代码
Sub 排序()
With ActiveWorkbook.Worksheets("表").Sort
.SortFields.Clear
.SortFields.Add Key:=Range("A2"), SortOn:=xlSortOnValues, Order:=xlDescending, _
DataOption:=xlSortNormal '降序排列
.SetRange Worksheets("表").Range("A2:C13")
.Header = xlGuess
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
End Sub
升序为Order:=xlAscending

热心网友 时间:2023-10-29 15:35

  1、带参数名引用,如: key1:=Range("G3")
  2、 参数位置引用,即按照上述Sort命令的参数顺序直接应用,
  如: Range("A1:I19").Sort key1:=Range("G3") 即第1位置参数即为key1
  3、Order1、Order2、Order3
  这些Order是排序的顺序模式指定参数。即: A-Z升序、或Z-A降序
  参数的模式名称为:
  A-Z升序= xlAscending 或直接=1
  Z-A降序= xlDescending 或直接=2
  带参数名引用时:
  Order1:=xlAscending 或 Order1:= 1
  参数位置引用时,紧跟key后面。(但注意key2和Order2之间要隔一个Type参数)
  4、Header
  即是否有标题行参数,一共有3个值:
  Header:= xlGuess=0 或xlYes=1 或 xlNo=2
  即=xlGuess、或=0时,工作表自己判断
  =xlYes、或=1时,强制第1行为列标题,即第1行【不参与排序】
  =xlNo、或=2时,强制没有列标题。即第1行【也参与排序】
  带参数名引用时:
  如: Header:= xlGuess
  参数位置引用时,在第7个逗号之后。
  (如果key只有1个时,要连续空6个逗号,
  如:Range("A1:I19").Sort Range("A1"), 1, , , , , , 2 (order1之后连续写6个逗号)
  5、MatchCase 是否匹配大小写
  MatchCase:=False 、或=0 不区分大小写
  MatchCase:=True 、或=1 区分大小写(Case Sensitive)
  6、Orientation 排序方向
  一般为同一列中从上到下各行进行排序:Orientation:= xlTopToBottom 、或=1
  如果是: 同一行中从左到右各列进行排序,则为:Orientation:= xlLeftToRight、或=2
  7、SortMethod 排序方法
  按拼音排序: SortMethod:= xlPinYin 、或=1 (Use phonetic info)
  按笔画排序: SortMethod:= xlStroke、或=2
  8、 DataOption1 按数值或按文本排序
  DataOption1:= xlSortNormal
  9、以上综合示例为: 按参数名引用:
  Range("A1:I19").Sort key1:=Range("G3"), Order1:=xlAscending, _
  Header:=xlGuess, OrderCustom:=1, MatchCase:=False, _
  Orientation:=xlTopToBottom, SortMethod:=xlPinYin, _
  DataOption1:=xlSortNormal
  直接按参数位置:
  Range("A1:I19").Sort [G3], 1, , , , , ,0, 1, 0, 1, 1,1
  或根据默认为:Range("A1:I19").Sort [G3], 1

热心网友 时间:2023-10-29 15:36

看例子吧。。。

需要定义一个公式。。

a:

=LARGE((Sheet1!$A$1:$A$15=Sheet1!A1)*(Sheet1!$B$1:$B$15),ROW(INDIRECT("1:" & COUNTIF(Sheet1!$A$1:$A$15,Sheet1!A1))))

 

再在C1输入:

=match(B1,a,0)

下拉即可。

热心网友 时间:2023-10-29 15:36

文件发送到

处理好来认领

热心网友 时间:2023-10-29 15:37

假设你的工作表名为“表”,采用如下代码
Sub 排序()
With ActiveWorkbook.Worksheets("表").Sort
.SortFields.Clear
.SortFields.Add Key:=Range("A2"), SortOn:=xlSortOnValues, Order:=xlDescending, _
DataOption:=xlSortNormal '降序排列
.SetRange Worksheets("表").Range("A2:C13")
.Header = xlGuess
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
End Sub
升序为Order:=xlAscending
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
地下城与勇士的代理权是独家的还是都可以争取? 请问如果写关于地下城与勇士的书会被疼训告侵权吗? 地下城与勇士为啥什么都要从韩国先开始那 榉树小苗在北方能安全过冬吗 第27届奥运会上共决出多少枚金币,获得金牌总数最多的是哪个国家,我国选 ... 第27界奥运会上共决出多少枚金牌?哪个国家的最多?我国有几枚? 第27届奥运会上共决出多少块金牌?获得金牌最多的是哪个国家?我国选手... 27界奥运会共决出多少枚金牌 益盟五星波段满意度是多少 益盟五星波段怎么样 在EXCEL 中如何利用VBA来解决排序问题 Excel 请问如何用VBA对某一行的内容按列排序 怎么用VBA对EXCEL内的数据排序 Excel中如何用VBA排序? 孕期可以吃的零食有哪些呢? 西洋乐器的主分类 有什么西洋乐器和它们的资料/? 电声乐器有哪些? 公司目前和5G相关的产品和研发有哪些 5G对汽车未来的发展会有哪些影响? 宝能汽车在5G方面有哪些举措? 与汽车相关的产品 5G网络与智能汽车有什么关系 小米手机的照片怎么同步到云端呢?是自动同步吗? 黑名单同步到云端是什么意思 C4D景深映射背景模糊数值是多少啊 c4d精神模糊怎么调 让视频上下模糊 如何系统科学地学习C4D c4d里渲染的景深拿到ae里怎么合成 c4d中的深度通道是什么 ExcelVBA该怎么排序? ExcelVBA怎么排序? 电子表格 VBA 如何让表格按照自己安排的顺序排序? excel VBA 排序 Excel 多条件排序(可能要用VBA) Excel VBA 排序问题 EXCEL中的VBA中排序问题 如何用VBA将excel中的一列值进行从小到大排序,然后显示到excel上喔?? snapchat怎么删除表情 excel vba排序问题 excel VBA排序的问题 vba如何实现excel工作表按数据大小排列 excel 关于用VBA进行排序 VBA改写VB(对EXCEL排序) VBA高手请进!EXCEL自动排序问题! 黑芝麻直接用料理机磨碎,兑水后就是黑芝麻糊吗? 怎么做二维码,能让别人直接可以微信付款,不用加好友? 知道怎么把钱打给别人,不加好友的情况下。 微信无需加好友怎么向别人付款? 微信扫码支付不用加好友 可以付款吗