excel 给每列单独排序

比如说有十列数据,要想一次使它们按每列单独排序,就必须用到vba。

 

首先说一下手动的一列一列排的简单方法:

⓪用鼠标单击第一列的列标签,然后再点数据标签页下的升序排序。

image

①出现排序提醒对话框,默认为扩展选定区域(表示每一列都按第一列排),改为以当前选定区域排序。

image

②然后对每一列都重复执行该操作

用宏命令来解决这个问题

⓪打开开发工具标签页下的宏命令

image

①随便输入名字再点创建

image

②复制粘贴以下命令:

sub colsort 
Set ss = Selection 
For i = 1 To ss.Columns.Count 
ss.Columns(i).Sort Key1:=ss.Columns(i), Order1:=xlAscending, Header:=xlNo, _ 
  Orientation:=xlTopToBottom 
Next 
End Sub

然后保存时会提示你要重新保存文件为支持宏命令的格式(xlsm),按它说的做就行了

③注意vba语句中定义的“ss = Seletion”,这说明要先选中需要排序的列才能正确执行这个命令

image

原文地址:https://www.cnblogs.com/cnsealine/p/4362360.html