当前位置: 首页 > news >正文

国外做伞的品牌网站品牌活动策划

国外做伞的品牌网站,品牌活动策划,视觉中国设计网站,设备上哪个网站做外贸推广Excel VBA 双列排序 功能概述 这段VBA代码实现了Excel中的双列排序功能,具体是: 跳过前3行表头先按C列数据从大到小排序在C列值相同的情况下,按B列从大到小排序排序时保持整行数据的完整性 流程图 #mermaid-svg-XJERemQluZlM4K8l {font-fa…

Excel VBA 双列排序

在这里插入图片描述

功能概述

这段VBA代码实现了Excel中的双列排序功能,具体是:

  1. 跳过前3行表头
  2. 先按C列数据从大到小排序
  3. 在C列值相同的情况下,按B列从大到小排序
  4. 排序时保持整行数据的完整性

流程图

开始
定义工作表和变量
获取最后一行行号
设置数据格式
定义排序范围
清除已有排序字段
添加第一个排序键:C列
添加第二个排序键:B列
执行排序
显示完成提示
结束

代码详解

1. 变量声明和初始化

Dim ws As Worksheet
Dim lastRow As Long
Dim sortRange As RangeSet ws = ActiveSheet
  • Worksheet: 工作表对象
  • lastRow: 存储数据的最后一行行号
  • sortRange: 定义排序范围

2. 获取数据范围

lastRow = ws.Cells(ws.Rows.Count, "C").End(xlUp).Row
  • 使用End(xlUp)方法从底部向上查找最后一个非空单元格

3. 格式设置

With ws.Range("B4:C" & lastRow).NumberFormat = "0.00"    '设置为2位小数.Value = .Value           '刷新值
End With
  • 设置B列和C列的数字格式
  • 通过重新赋值来刷新单元格内容

4. 排序范围定义

Set sortRange = ws.Range("A4:E" & lastRow)
  • 从第4行开始(跳过表头)
  • 包含A到E列的所有数据

5. 排序实现

With ws.Sort.SortFields.Clear.SortFields.Add Key:=ws.Range("C4:C" & lastRow), _SortOn:=xlSortOnValues, _Order:=xlDescending, _DataOption:=xlSortNormal.SortFields.Add Key:=ws.Range("B4:B" & lastRow), _SortOn:=xlSortOnValues, _Order:=xlDescending, _DataOption:=xlSortNormal.SetRange sortRange.Header = xlNo.MatchCase = False.Orientation = xlTopToBottom.SortMethod = xlPinYin.Apply
End With

关键参数说明:

  • SortFields.Clear: 清除现有排序条件
  • SortOn:=xlSortOnValues: 按值排序
  • Order:=xlDescending: 降序排列
  • Header = xlNo: 不包含表头
  • SortMethod = xlPinYin: 使用拼音排序方法

使用注意事项

  1. 确保数据从第4行开始
  2. 数据列需要在A到E列之间
  3. 数据格式应为数字类型
  4. C列为第一排序键,B列为第二排序键

V20250116 X从大到小

Sub SortTwoColumnsWithHeaders()Dim ws As WorksheetDim lastRow As LongDim sortRange As RangeSet ws = ActiveSheetlastRow = ws.Cells(ws.Rows.Count, "C").End(xlUp).Row'确保数据格式正确(从第4行开始)With ws.Range("B4:C" & lastRow).NumberFormat = "0.00"    '设置为5位小数.Value = .Value              '刷新值End With'定义排序范围(从A列到E列,从第4行开始)Set sortRange = ws.Range("A4:E" & lastRow)'执行排序With ws.Sort.SortFields.Clear.SortFields.Add Key:=ws.Range("C4:C" & lastRow), _SortOn:=xlSortOnValues, _Order:=xlDescending, _DataOption:=xlSortNormal.SortFields.Add Key:=ws.Range("B4:B" & lastRow), _SortOn:=xlSortOnValues, _Order:=xlDescending, _DataOption:=xlSortNormal.SetRange sortRange.Header = xlNo               '因为真正的数据从第4行开始,所以这里设置为No.MatchCase = False.Orientation = xlTopToBottom.SortMethod = xlPinYin.ApplyEnd WithMsgBox "排序完成!"
End Sub

V20250116 每行的X从小到大升序排列

Sub SortTwoColumnsWithHeaders()Dim ws As WorksheetDim lastRow As LongDim sortRange As RangeSet ws = ActiveSheetlastRow = ws.Cells(ws.Rows.Count, "C").End(xlUp).Row'确保数据格式正确(从第4行开始)With ws.Range("B4:C" & lastRow).NumberFormat = "0.00"    '设置为5位小数.Value = .Value              '刷新值End With'定义排序范围(从A列到E列,从第4行开始)Set sortRange = ws.Range("A4:E" & lastRow)'执行排序With ws.Sort.SortFields.Clear.SortFields.Add Key:=ws.Range("C4:C" & lastRow), _SortOn:=xlSortOnValues, _Order:=xlDescending, _DataOption:=xlSortNormal.SortFields.Add Key:=ws.Range("B4:B" & lastRow), _SortOn:=xlSortOnValues, _Order:=xlAscending, _DataOption:=xlSortNormal.SetRange sortRange.Header = xlNo               '因为真正的数据从第4行开始,所以这里设置为No.MatchCase = False.Orientation = xlTopToBottom.SortMethod = xlPinYin.ApplyEnd WithMsgBox "points order finshied!"
End Sub
http://www.ritt.cn/news/208.html

相关文章:

  • 广州的企业网站建设推广app用什么平台比较好
  • b2c网站建设方案深圳网络推广网络
  • 邀约网站怎么做请柬怎么做网站推广和宣传
  • 手机做wordpress山东网络推广优化排名
  • 网站做微信支付功能广州百度竞价托管
  • 政府网站改版建设线上宣传渠道
  • 制作一个网站需要多长时间做百度推广的网络公司广州
  • 什么是三合一网站建设网页搜索关键字
  • 房地产网站怎样建设才能快速盈利0元免费做代理
  • 华仁建设网站网站推广方案策划
  • 英文网站怎么做seo自媒体seo优化
  • 网站开发总结文档网址如何被快速收录
  • 阿里云如何搭建网站百度指数的网址
  • 网站移动端是什么问题吗优帮云首页推荐
  • 手机网站案例网站建设制作过程
  • 在什么网站可以做外贸出口劳保鞋百度推广咨询
  • 吉林省四平市网站建设seo整站优化服务
  • 平台和网站有什么区别seo推广的特点
  • 营销型网站建设哪里济南兴田德润优惠吗百度问答官网
  • 我要学做网站推广网站seo
  • 网站建设广州潍坊seo推广
  • 什么是html5网站软文内容
  • wordpress 导航下拉优化设计六年级下册语文答案
  • 旅游网站开发 目的及必要性google网站
  • 创可贴在线设计网站大数据分析营销平台
  • 广州注册公司在哪个网站广西南宁市有公司网站设计
  • 用dw做教学网站cctv 13新闻频道
  • 做恶搞网站软件上海百度seo
  • 如何建立属于自己的网址重庆企业seo
  • 请问聊城网站建设淘宝seo搜索引擎原理