excel - VBA在一列上从A到Z排序

标签 excel vba

如何根据 M 列上的 A-Z 升序对所有 A-Z 行进行排序 我已经尝试了以下方法,但没有效果,不知道我可能做错了什么?

Range("A1", Range("Z" & Rows.Count).End(xlUp)).Sort [M1], xlAscending

最佳答案

录制一个宏,您可以在其中选择要排序的列。作为示例,我录制了一个按升序对 M 列进行排序的宏:

Sub SortAsc2()

Dim LastRow As Long

LastRow = Cells(Rows.Count, "M").End(xlUp).Row

Columns("M:M").Select
ActiveWorkbook.Worksheets("Sheet1").Sort.SortFields.Clear
ActiveWorkbook.Worksheets("Sheet1").Sort.SortFields.Add Key:=Range("M1"), _
    SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
With ActiveWorkbook.Worksheets("Sheet1").Sort
    .SetRange Range("M1:M" & LastRow)
    .Header = xlGuess
    .MatchCase = False
    .Orientation = xlTopToBottom
    .SortMethod = xlPinYin
    .Apply
End With

End Sub

关于excel - VBA在一列上从A到Z排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45200732/

相关文章:

python - 读取大型 excel 表(猜测大小)

postgresql - 通过 VBA 自动链接/刷新 MS Access 中的 ODBC 链接表

excel - 范围不会更改多个单元格

excel - VBA将2个用户表单文本框中的值合并到第三个文本框中

java - 在 Excel 文件中追加数据

java - 如何使用 Apache POI 解析保存在 Excel 文件中的树结构

excel - VBA Excel-如何根据三列删除重复项

excel - 通过 excel 中的列循环 DateLastModified 函数

vba - “范围类的取消分组方法失败”错误

vba - 从单元格中选择保存路径