yuanzhen_licheng 2018-03-11 06:38 采纳率: 100%
浏览 2795
已采纳

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

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

  • 写回答

1条回答

  • zcarl 2018-03-11 09:04
    关注

    在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宏可用。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 如何在scanpy上做差异基因和通路富集?
  • ¥20 关于#硬件工程#的问题,请各位专家解答!
  • ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
  • ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
  • ¥30 截图中的mathematics程序转换成matlab
  • ¥15 动力学代码报错,维度不匹配
  • ¥15 Power query添加列问题
  • ¥50 Kubernetes&Fission&Eleasticsearch
  • ¥15 報錯:Person is not mapped,如何解決?
  • ¥15 c++头文件不能识别CDialog