EXCEL 如何同时对 多个页 的 同一列 进行排序

手上有几百个excel表,每个表中有多个页(sheet1、2、3...),每页中都存有相同格式的数据,如B列中都是数值,我想打开一个excel,对其含有的多个页,都按B列数值大小,各自同时升序排列,这样可以省得一个一个点进去手动排列了。有没有高手帮忙看看呢,先在此谢过。

1个回答

在Excel中按ALT+F11打开VBA编辑器,双击左侧VBA project下ThisWorkBook,在右侧编辑窗口粘贴以下代码,保存后关闭。再次打开时,Excel会自动把所有sheet的按第2列排序(本代码为升序)。

Private Sub Workbook_Activate()

Dim ws As Integer

For ws = 1 To ActiveWorkbook.Sheets.Count

With ActiveWorkbook.Worksheets(ws)
    '.Activate
    '.Columns("B:B").Select
    .Sort.SortFields.Clear
    .Sort.SortFields.Add Key:=Range("B1"), _
        SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
End With

With ActiveWorkbook.Worksheets(ws).Sort
    .SetRange Range("A2:Z100")    '   Z是最大列号,100是最大行号,可以根据实际调整
    .Header = xlGuess
    .MatchCase = False
    .Orientation = xlTopToBottom
    .SortMethod = xlPinYin
    .Apply
End With

Next ws

End Sub

如果不能生效,请保证VBA宏可用。

weixin_44124925
Cupid_xj 亲测有效,感谢博主!!!
5 个月之前 回复
yuanzhen_licheng
yuanzhen_licheng 用您的写的代码成功了,非常感谢您!
一年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
如何对GtkTreeView 的某一列进行排序
想对GtkTreeView 进行排序, 有人说用GtkTreeSortable 可是不是很明白
如何同时对多个表进行删除?
我现在需要同时删除4个表中满足条件的纪录,各个表之间通过ProductID主键约束rn我是这么些的,但是总说有错rndelete from Supply_Listing a,Supply_ProductFunc b,Supply_ProductClass c,Supply_Contact d where a.ProductID=条件 and a.ProductID=b.ProductID and a.ProductID=c.ProductID and a.ProductID=d.ProductID rn总是提示"a"附近有错误rnrn但是我一个一个表的删除,就提醒我,这条纪录与别的表中的纪录有关联,不能删除rn到底怎么做呢?rn谢谢高手指点啊!
如何对多个复杂对象进行排序
项目中有四个po每个类型的字段都还一样,但都有一个日期字段,现在要按时间升序排出每个对象最上面三个对象,然后把这十二个对象的按日期在程序中进行排序取前面三个对象,请教一下大家有不有对不同类型对象按其中一个字段进行排序的例子学习一下
excel中同一列如何同时乘以或除以一个数
问题 如何将一列同除以3?方法之一在旁边写个3,复制3到剪贴板,选中那一列,右键,选择性粘贴 选择“除”,确定,即可
excel如何对多列进行排序
比如有下面这么些数据,希望得到第一列从小到大,对每一个第一列的值,第二列从小到大,类似的,对每一个第二列的值,第三列从小到大,……。谢谢rn0.1 10 4 10 8191rn0.1 10 8 10 8191rn0.1 20 4 1 8191rn0.1 20 4 10 8191rn0.1 20 4 49 8191rn0.3 1 16 15 2048rn0.3 1 16 15 8191rn0.3 1 16 5 2048rn0.3 1 16 5 8191rn0.3 1 28 5 2048rn0.3 1 28 5 8191rn
Java 对数组的每一列进行排序
求大神指点,谢谢了!Java 对数组的每一列进行排序89 78 64 73 72 83 96 71 85 63 79 81 53 65 77 81 75 99 91 88 第1位同学总成绩为=304第2位同学总成绩为=322第3位同学总成绩为=308第4位同学总成绩为=276第5位同学总成绩为=353排序为75 99 91 88 72 83 96 7185 63 79 8189 78 64 735...
在DataGrid中,怎样对一列进行排序?
谢谢!
Excel对同时包含字母和数字的文本进行排序
如果表格中既有字母也有数字,现在需要对该表格区域进行排序,用户可以先按数字排序,再按字母排序,达到最终排序的效果。具体操作步骤如下: 选择D列任一单元格,在【数据】选项卡的【排序和筛选】组中,单击【排序】按钮。      在弹出的【排序】对话框中,单击【主要关键字】后的下拉箭头,在下拉列表中选择【规格型号】选项,设置【排序依据】为【数值】,设置【次序】为【升序】。       在【排序】对话...
多个循环体如何同时进行?
请教一下~rn多个循环体同时进行该怎么写?例如,同时读取两个同样大小的图片,同时读取他们相同坐标的信息
用Python如何对xlsx的某一列进行排序
xlsx文件是用xlsxwriter 生成的,需要对文件中的某一列进行排序,哪位大神知道要怎么实现?谢谢!
Flex 对集合的多个字段进行排序
因为数组可被多个SortFields 排序,Sort 对象的fields 属性就是一个数组。这些sort 创建一个层级的结构,所有对象进行分组排序,先根据field 属性里的第一个SortField 对象,再第一个,以此类推。这个例子代码先根据regions 再states 对集合进行排序:   coll = new ArrayCollection{[{city:"Cleveland", stat...
对多个数组或多维数组进行排序
//让$data['data']中的数据内容根据指定的order_detail_id字段来做倒序排序 $data是一个三维数组,而我们的目的只是为了让$data['data']中的数据根据某个字段来为这个二维数组来做降序排列 $data_values = array(); foreach ($data['data'] as $valu...
<xsl:sort>对多个字段进行排序
最近在学习xsl,其中也遇到了不少问题,比如对多个字段排序,因为w3school上面的内容很简单,所以没有提及这个 <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> My CD Collection Title
怎样对多个关键字进行排序?
现在主要关键字、次要关键字和第三关键字,怎样用一条SQL语句对这三个关键字进行排序,而且先排序主要关键字的序列,然后在主要关键字的序列对次要关键字进行序……rnrn还有一个问题``怎样对中文的拼音排序啊?我不想对我的表的中文弄个字母表,这样的扩展性不好,如果动态的添加了一个用户名,那么就不行了,并且我的表里不只一个字段为中文`
如何对Dataview进行排序?
Dataview中有三个字段(int32类型)A\B\Crnrn如何对Dataview进行排序?sort的规则为"A*B/C"??rnrn即按A*B/C的值大小排序.rnrnrnrnrn
如何对字符串进行排序
倒序和按字母A-Z或a-z 例如"katty"输出为"yttak"
如何对表格进行排序
希望对选中列进行升序或者降序排列,rn使用GetItemText获取表格的数值后,由于当时定义的表格是STRING型.rn是否是先将数值读取进一个新创建的数组然后强制转换成FLOAT之后进行排序~?rn偶是菜鸟..谢谢>.<
如何对单列进行排序
我想对单列进行排序,而且当我对单列进行排序时那一列的列头旁边会出现一个三角号表示当前对该进行的排序是按升序排列还是降序排列rn
如何对数组元素进行排序?
有个问题想请教大家:rnm=[1,4,7,10,2,5,6,3,9,8,15,12,13,11,18,17,16]rn上面数组元素为节点号,下面是节点号及其对应X,Y,Z坐标集合rnn=[[1,3.0,3.0,0],[2,3.0,3.0,3.0],[3,0,3.0,6.0],[4,3.0,3.0,9.0],[5,3.0,0,12.0],[6,3.0,3.0,15.0],[7,0,3.0,18.0],[8,3.0,3.0,21.0],[9,0,3.0,24.0],[10,3.0,3.0,27.0],[11,3.0,0,30.0],[12,3.0,3.0,33.0],[13,0,3.0,36.0],[14,3.0,0,39.0],[15,3.0,3.0,42.0],[16,3.0,3.0,45.0],[17,0,3.0,48.0],[18,3.0,3.0,51.0]]rnn列表里面每一项有四个元素,分别为节点号,X向坐标,Y向坐标,Z向坐标。m列表中的元素为n列表中的节点号,我想将m列表中的元素按照其对应的Z向坐标值的大小,从小到大进行重新排序,请问大家这个如何实现,非常感谢!
如何对数组进行排序?
例如有个:rnrnwhere="where name="+name+" and (time >='2007-03-5 00:00:00' and time <='2007-05-5 23:59:59')";rnrntryrs=c.clist(where);rnif(rs.next())num=rs.getRow();rnrn因为有很多name的这个不同 num也就不同 最后整体显示的时候如何实现按num来排序啊。。。。。rnrn我思路是把num的值放入数组然后再排序。。。可怎么实现。。。rnrn或者有更好的思路解决问题更好!!
如何对二维数组进行排序
最近做题时发现有些任务需要将二维数组按照某一列进行排序 但JDK里并没有直接提供这一排序的方法 考虑自己重新写实在太麻烦(还不一定正确/高效) 百度了一番: //https://zhidao.baidu.com/question/584126645687159005.html?qbl=relate_question_1&word=Arrays.sort%28ob%2C%20new%
如何对map进行排序
Map介绍 常用的Map有HashMap,TreeMap,LinkedHashMap HashMap:最常用的Map,根据key的HashCode值来存储数据,根据key可以直接获取它的Value,具有很快的访问速度。HashMap最多只允许一条记录的key值为null(多条会覆盖);允许多条记录的Value为null。非线程安全 TreeMap: 根据key排序,默认是按升序排序,也可以指定排序...
如何对视图进行排序?
我建立视图后用下面语句提取数据库内容,结果没有按TEMP排序,语句如下:rnrnselect * from ( select NAME,MOBILID,CENTERID,HOSTID,ERRORID, TEMP, OPTIONAL,OBJECT_NAME,OBJECT_ID,TIMEOUT,MSG ,ROWNUM num rn from viewwebtrap rn where object_id='$condition' and rownum < $end order by TEMP desc rn ) rnwhere num > =$startrn请大家帮帮忙!
如何对二叉树进行排序?
现在要对二叉树进行排序,请问该怎么做?
如何对矩形进行排序
各位网友你们好!rn 我定义一个矩形,rnstruct geoRectrnrn double left;//经度方向rn double top;//纬度方向 rn double right;rn double bottom;rnrn如何对该矩形进行排序呢?我想按照优先考虑left --》right ,然后top--》bottom的方式进行排序
如何对List 进行排序?
public List process(List data)rndata的数据格式:rn[count=1588847, adress=南京, count=973476, adress=南通, count=371132, adress=总部,……];rnrnList中有多个Map,每个Map中只有count、adress 2个键值对。要求传入一个无序的data list,返回的按count倒序,期中如果adress出现"总部",那么就把总部在第一条,其他城市在总部之后按count倒序排列。rnrnrn我是用2个Comparator自定义排序做的,第一个按count倒序排,然后再把得到的list 按adress排,结果adress排是对的了,但是count排就没了。 总之不好结合一起用。rnrn求指教,在线等。
如何对字段进行排序
dim s as integerrn Dim rs As ADODB.Recordsetrn Set rs = New ADODB.Recordsetrn rn s = 2rn If s = 1 Thenrn rn (1)'rs.Open "select * from yf_table_wr order by diannaoid,billid", gDB, adOpenKeyset, adLockOptimisticrn '实时错误 '-21472178884' (80040e24) 行集不支持反向提取?rn rn (2)rs.Open "select * from yf_table_wr", gDB, adOpenKeyset, adLockOptimisticrn rn If Not rs.EOF Thenrn rs.MoveLastrn rs.MoveFirstrn icount = rs.RecordCountrn rn 'MsgBox icount '=-1rn rn For i = 1 To icountrn rs!diannaoid = irn rs.Updatern rs.MoveNextrn Nextrn rn MsgBox "重排完成!", vbInformation, "提示"rn Elsern MsgBox "没有录,不用重排", vbCritical, "提示"rn End Ifrn Elsern i = 0rn '------------------rn (3)'rs.Open "select * from yf_table_wr order by diannaoid,billid", gDB, adOpenKeyset, adLockOptimisticrn '有时提示.rn '提示"实错误'3251' 当前记录集不支持更新.这可能是提供程序的限制,也可能是选定锁定类型的限制."rn '------------------rn (4)rs.Open "select * from yf_table_wr", gDB, adOpenKeyset, adLockOptimisticrn If Not rs.EOF Thenrn Do While Not rs.EOFrn i = i + 1rn rs!diannaoid = irn rs.Updatern rs.MoveNextrn Looprn MsgBox CStr(i) & "条记录重排完成!", vbInformation, "提示"rn Elsern MsgBox "没有录,不用重排", vbCritical, "提示"rn End Ifrn rn End Ifrnrn'------------------rn如果S=1,用(1)语句,提示"实时错误 '-21472178884' (80040e24) 行集不支持反向提取?"rn用(1)语句,rs.RecordCount得到的是-1?rn如果S<>1,用(3)语句,提示"实错误'3251' 当前记录集不支持更新.这可能是提供程序的限制,也可能是选定锁定类型的限制."rn用(4)语句,可以.不知道前三个语句错误产生的原因!!!rn当用(4)语句更新好后,在执行(3)语句,就没有提示错误了,也不知道是什么原因?rnrn请高手指教!rn
如何对结构体进行排序
小弟我想新建一个动态的指针数组*index[],然后用其对结构体进行排序,请问如何操作呢?~~首先前面那个动态创建的就出了问题了...假设我现在要创建一个个数为n的index数组,然后对结构体按mark排序,希望大家帮帮忙~~rnrnstruct studentsrnrn int mark;rn char *name;rn;rnrn谢谢大家
如何对数据集进行排序?
如下所示:rnset rs=conn.Execute(sql)rnrn而我想对rs再次进行排序,有没有办法?rnrn
如何对链式存储结构进行排序?
我们这学期学了数据结构,我们所学的排序只是针对顺序表(数组),rn但是若对链表的排序却没有多想,那么在实际中我们会大量使用链表的,如何排序?rn希望尽量简便,因为我可以把链表中的数据"提取"到顺序表中,然后再排序,但是这样做比较浪费空间,想有一个更好的方法.rn此题作为交流,因此不设给分.rn
如何对hashtable 进行排序?
有一个hashtable,他的关键字是string类型,我想对它排序(以关键字从小到大排),请问有什么办法?rn最好给我程序,谢谢!
水晶报表,多个表通过同一列进行分组
需求是这样的,从数据库中查询出来8张表,rn而这八张表有一个共同的字段rn现在希望这八张表通过这一个共有字段进行分组rnrn如下:(列举两张表的例子)rnrnrnrn日期 位置 机器 产品编号 类别rn2011/9/27 16:01 A 12 NULL NULLrn2011/9/27 16:01 A 12 NULL NULLrn2011/9/27 16:01 A 12 1 农副食品rn rn rn 位置: A rn 收现金: 500 rn 收信用卡: 200 rn rn rn日期 位置 机器 产品编号 类别rn2011/9/27 16:27 B 13 3 洗涤用品rn2011/9/27 16:27 B 13 NULL NULLrn rn rn 位置: B rn 收现金: 200 rn 收信用卡: 20 rnrnrnrn上面内容来自两张表,请问下,这两张表怎么 通过 位置 这个字段进行分组呢,rn两个表中都有位置rnrnrn(实际情况,我想通过8张表分组,这8张表都有位置这个字段)rnrnrnrn各位高手帮帮忙
如何对excel某一列的数据进行分列
关住 公 纵 号 “  阿蒙课程分享    ”  获得学习资料及趣味分享 1.待分割的内容:3.选中待分割列后,选择【数据】--&amp;gt;【分列】​4.在弹窗中选择“分割符号”,点击【下一步】5.根据数据特点,选择空格分割,可以在数据预览查看分割效果6.点击【完成】7.分割完成  ...
多个ajax同时进行
ajax,多个ajax同时进行
matlab对excel数据进行排序求和
matlab对excel数据进行排序求和并输出结果
在EXCEL中对IP地址进行排序
将A2改为对应的列即可,产生后对该列进行排序,原A列数据就会按IP地址大小排序了 =SUMPRODUCT(MID(SUBSTITUTE(A2,&quot;.&quot;,REPT(&quot; &quot;,20)),{1,21,41,61},20)*10^{9,6,3,0})
VB.NET如何多个线程同时对同一个文件进行读写
比如一个大小为两万字节的文件rn我想将它的字节内容全修改掉rn创建两个线程rn一个线程从第一个字节开始写入新的字节数据rn另一个就从第一万个字节开始写入新的字节数据rn两个线程同时进行rn如何实现呢??rnrn高手请给个简单的小例子rn
Oracle对同一个表同一列进行操作的update触发器
建的表rn[code=SQL]rncreate table productrn(rnpCode number not null,rnpType varchar2(20),rnpName varchar2(20),rncost number(5,1),rnprice number(5,1),rnprimary key(pCode) rn);rn[/code]rnrn表的数据rn[code=SQL]rninsert into product values('101', '足球类', '足球', '85.0', '110.0');rninsert into product values('102', '足球类', '手套', '90.0', '122.0');rninsert into product values('201', '羽毛球类', '羽毛球鞋', '28.0', '38.0');rninsert into product values('202', '羽毛球类', '球拍', '200.0', '250.0');rninsert into product values('301', '游泳类', '泳镜', '85.0', '102.0');rninsert into product values('302', '游泳类', '泳帽', '50.0', '63.0');rninsert into product values('401', '健美类', '拉力器', '40.5', '54.5');rninsert into product values('402', '健美类', '十磅哑铃', '70.0', '92.0');rninsert into product values('403', '健美类', '跳绳', '10.0', '20.0');rn[/code]rnrnrn下面是我建的update触发器rn[code=SQL]rncreate or replace trigger change_pricernbefore update of pricernon productrnfor each rowrndeclare pragma autonomous_transaction;rnbeginrnupdate product set price=costrnwhere price
聚合函数对同一列进行条件筛选的问题
sum(列)配合HAVING 只能对一个列进行条件筛选rn如果我需要对以下例句进行分别筛选如何写拉/rnselect 营业员ID as 营业员编号, sum(销售明细.商品数量) as 销售数量 ,sum(销售明细.商品数量) as 退货数量.....having sum(销售明细)>0 and ....rn 谢谢
如何对Excel进行数据库连接
我想把Excel标作为数据库连进delphi中,但不知道如何实现
相关热词 c++和c#哪个就业率高 c# 批量动态创建控件 c# 模块和程序集的区别 c# gmap 截图 c# 验证码图片生成类 c# 再次尝试 连接失败 c#开发编写规范 c# 压缩图片好麻烦 c#计算数组中的平均值 c#获取路由参数