excel - 从左到右对多行进行排序
问题描述
我有一个很大的 excel 文件,我试图按行从左到右排序vba
,一直试图找到一种工作方法,但我的经验太低了。令人惊讶的是,做本应是一项简单的任务是多么困难。
我已经从另一篇文章中尝试过这段代码,但正在混合它们并且只安排了第一行。
Sub sortfile22()
Dim keyrange As String
Dim DataRange As String
keyrange = "A1:T1"
DataRange = "A1:T8"
Range("A1").Select
Range(Selection, Selection.End(xlToRight)).Select
Range(Selection, Selection.End(xlDown)).Select
ActiveWorkbook.Worksheets("Sheet1").Sort.SortFields.Clear
ActiveWorkbook.Worksheets("Sheet1").Sort.SortFields.Add Key:=Range(keyrange), _
SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
With ActiveWorkbook.Worksheets("Sheet1").Sort
.SetRange Range(DataRange)
.Header = xlYes
.MatchCase = False
.Orientation = xlLeftToRight
.SortMethod = xlPinYin
.Apply
End With
End Sub
我的数据看起来像这样
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
48 1 16 40 75 21 50 3 35 73 80 53 33 46 38 2 69 54 63 79
54 27 62 56 79 67 71 75 28 35 78 66 60 65 5 47 31 38 68 21
56 77 43 9 64 80 72 16 17 46 10 22 63 34 41 8 53 60 6 79
解决方案
您需要单独对每一行进行排序。因此,逐行循环并自行DataRange
排序。DataRow
Option Explicit
Public Sub SortRowWise()
Dim ws As Worksheet
Set ws = ThisWorkbook.Worksheets("Sheet1")
Dim DataRange As Range
Set DataRange = ws.Range("A1").CurrentRegion
Dim DataRow As Range
For Each DataRow In DataRange.Rows 'loop through all rows of the data
With ws.Sort
.SortFields.Clear
.SortFields.Add Key:=DataRow, SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
.SetRange Rng:=DataRow
.Header = xlNo
.MatchCase = False
.Orientation = xlLeftToRight
.SortMethod = xlPinYin
.Apply
End With
Next DataRow
End Sub
所以这个输入数据……</p>
… 将排序为:
推荐阅读
- android - 如何以编程方式在 Android 设备上禁止通话(关闭 GSM)
- qt - 如何设置特定国家/地区的 QML 地图区域设置
- javascript - 如何使用javascript实现fadeOutLeft?
- javascript - 我如何显示一些 UI,例如圆圈,当数据到达时,我可以更改特定圆圈的颜色?
- python - Python - 可以简化多个 if-condition 和 append
- firebase - Firebase 实时数据库是否支持多个数据库之间的自动数据同步?
- java - com/google/common/cache/RemovalCause java.lang.NoClassDefFoundError
- python - 在 Python 中将自定义对象添加到优先级队列
- php - 在 WooCommerce 过滤器中针对欧盟国家/地区的 if else 声明破坏了 REST API
- grafana - Grafana cloudspout-button-panel 插件未在按钮面板 url 请求上正确附加 Grafana 仪表板变量值?