メインコンテンツへスキップ

Excelでワークシートを英数字/英数字の順序で並べ替える方法は?

通常、シートタブバーにシートタブをドラッグアンドドロップすることで、Excelでワークシートタブの順序を並べ替えたり並べ替えたりできます。 ただし、複数のワークシートでこれを行うには、大きなワークブックでワークシートをアルファベット/英数字の順序ですばやく並べ替える、次のトリッキーな方法を検討してください。

ワークシートをVBAコードを使用してアルファベット/英数字の順序で並べ替えます
Kutools for Excelを使用して、ワークシートをアルファベット/英数字の順序で並べ替えます


ワークシートをVBAコードを使用してアルファベット/英数字の順序で並べ替えます

Microsoftサポートセンターに投稿されたアルファでワークシートを並べ替えるためのマクロがあります。 次の手順で適用できます。

1.  押したまま 頭の中 + F11 キー、そしてそれは開きます アプリケーション向け Microsoft Visual Basic 窓。

2.  インセット > モジュール、次に次のマクロをに貼り付けます モジュールウィンドウ.

VBA:シートをアルファベット/英数字の順序で並べ替えます

Sub SortWorkBook()
'Updateby20140624
Dim xResult As VbMsgBoxResult
xTitleId = "KutoolsforExcel"
xResult = MsgBox("Sort Sheets in Ascending Order?" & Chr(10) & "Clicking No will sort in Descending Order", vbYesNoCancel + vbQuestion + vbDefaultButton1, xTitleId)
For i = 1 To Application.Sheets.Count
    For j = 1 To Application.Sheets.Count - 1
        If xResult = vbYes Then
            If UCase$(Application.Sheets(j).Name) > UCase$(Application.Sheets(j + 1).Name) Then
                Sheets(j).Move after:=Sheets(j + 1)
            End If
            ElseIf xResult = vbNo Then
                If UCase$(Application.Sheets(j).Name) < UCase$(Application.Sheets(j + 1).Name) Then
                    Application.Sheets(j).Move after:=Application.Sheets(j + 1)
            End If
        End If
    Next
Next
End Sub

3。 を押します F5 このマクロを実行するためのキー。 次のプロンプトボックスで、をクリックします 有り、すべてのワークシートはアルファベットの昇順で並べ替えられます。 をクリックします いいえ、すべてのワークシートはアルファベットの降順で並べ替えられます。


Kutools for Excelを使用して、ワークシートをアルファベット/英数字の順序で並べ替えます

マクロに慣れていない場合、または他の方法を好む場合は、試してみてください Kutools for Excel. Kutools for Excel's スプレッドシートを並べ替える ツールはすべてのワークシートを簡単に並べ替えることができます。

申請する前に Kutools for Excelについては 最初にダウンロードしてインストールします.

1に設定します。 OK をクリックします。 クツールズプラス > ワークシート > スプレッドシートを並べ替える。 スクリーンショットを参照してください:

2。 の中に スプレッドシートを並べ替える ダイアログボックスで、右側のペインで必要な並べ替えの種類をXNUMXつ選択します。 アルファソート, 英数字ソート、をクリックします。 OK ボタン。 スクリーンショットを参照してください:

次に、すべてのワークシートは、指定された並べ替えタイプに基づいて並べ替えられます。 スクリーンショットを参照してください:

ドキュメントソートシート6

Kutools for Excel's スプレッドシートを並べ替える ツールは、アクティブなブック内のすべてのワークシートをすばやく再配置できます。 それは含むいくつかのソートタイプをサポートします アルファソート, 英数字ソート, 色分け & 。 さらに、ワークシートを上下に移動したり、並べ替えをリセットしたりすることもできます。

  このユーティリティの無料トライアル(30日)が必要な場合は、 クリックしてダウンロードしてください、次に、上記の手順に従って操作を適用します。


デモ:すべてのワークシートをアルファベット/英数字の順序で並べ替えます


関連記事:

ワークシートのタブを色で並べ替える

最高のオフィス生産性向上ツール

🤖 Kutools AI アシスタント: 以下に基づいてデータ分析に革命をもたらします。 インテリジェントな実行   |  コードを生成  |  カスタム数式の作成  |  データを分析してグラフを生成する  |  Kutools関数を呼び出す...
人気の機能: 重複を検索、強調表示、または識別する   |  空白行を削除する   |  データを失わずに列またはセルを結合する   |   数式なしのラウンド ...
スーパールックアップ: 複数の基準の VLookup    複数の値の VLookup  |   複数のシートにわたる VLookup   |   ファジールックアップ ....
詳細ドロップダウン リスト: ドロップダウンリストを素早く作成する   |  依存関係のドロップダウン リスト   |  複数選択のドロップダウンリスト ....
列マネージャー: 特定の数の列を追加する  |  列の移動  |  Toggle 非表示列の表示ステータス  |  範囲と列の比較 ...
注目の機能: グリッドフォーカス   |  デザインビュー   |   ビッグフォーミュラバー    ワークブックとシートマネージャー   |  リソースライブラリ (自動テキスト)   |  日付ピッカー   |  ワークシートを組み合わせる   |  セルの暗号化/復号化    リストごとにメールを送信する   |  スーパーフィルター   |   特殊フィルター (太字/斜体/取り消し線をフィルター...) ...
上位 15 のツールセット12 テキスト ツール (テキストを追加, 文字を削除する、...)   |   50+ チャート 種類 (ガントチャート、...)   |   40+ 実用的 (誕生日に基づいて年齢を計算する、...)   |   19 挿入 ツール (QRコードを挿入, パスから画像を挿入、...)   |   12 変換 ツール (数字から言葉へ, 通貨の換算、...)   |   7 マージ&スプリット ツール (高度な結合行, 分割セル、...)   |   ... もっと

Kutools for Excel で Excel スキルを強化し、これまでにない効率を体験してください。 Kutools for Excelは、生産性を向上させ、時間を節約するための300以上の高度な機能を提供します。  最も必要な機能を入手するにはここをクリックしてください...

説明


Officeタブは、タブ付きのインターフェイスをOfficeにもたらし、作​​業をはるかに簡単にします

  • Word、Excel、PowerPointでタブ付きの編集と読み取りを有効にする、パブリッシャー、アクセス、Visioおよびプロジェクト。
  • 新しいウィンドウではなく、同じウィンドウの新しいタブで複数のドキュメントを開いて作成します。
  • 生産性を 50% 向上させ、毎日何百回もマウス クリックを減らすことができます!

Comments (81)
Rated 5 out of 5 · 2 ratings
This comment was minimized by the moderator on the site
Grazie, ha funzionato perfettamente e mi ha risparmiato un sacco di lavoro. Complimenti
Rated 5 out of 5
This comment was minimized by the moderator on the site
Bom dia a macro funcionou porém com uma falha, veja no exemplo:
Abas (ANEXO 1, ANEXO 10, ANEXO 100, ANEXO 2, ANEXO 20)
Em uma planilha com os anexos acima ele organiza exatamente como está acima
Ele respeita a ordem somente a cada 10

Alguém sabe como corrigir? Olhei no font da macro mas não encontrei o problema
This comment was minimized by the moderator on the site
Macro qui marche parfaitement, en 30s c'est fait. Merci beaucoup
Rated 5 out of 5
This comment was minimized by the moderator on the site
Does anyone know how I would negate text from this macro? for example if my sheets were named "cafe 1st floor" and "kitchen 2nd floor" but id like to get rid of "cafe" and "kitchen"
thank you!
This comment was minimized by the moderator on the site
not working if your sheet was number ex: 1, 2, 10 12,
after sort: 1, 10, 12, 2
This comment was minimized by the moderator on the site
Hi Imd,
Do you mean all your sheet names are numbers and want to sort them ascending or descending? You can try the below VBA.

Sub Test1()

Dim i As Integer, j As Integer

For i = 1 To Sheets.Count

For j = 1 To Sheets.Count - 1

If Val(Replace(UCase(Sheets(j).Name), "SHEET", "")) > Val(Replace(UCase(Sheets(j + 1).Name), "SHEET", "")) Then Sheets(j).Move After:=Sheets(j + 1)

Next j

Next i

End Sub
This comment was minimized by the moderator on the site
Thank you for the macro !!!
This comment was minimized by the moderator on the site
Thank you for your help, very much appreciated...
This comment was minimized by the moderator on the site
I don't know VBA at all but your instructions worked perfectly. Thank you so much!
This comment was minimized by the moderator on the site
Thank you :)
This comment was minimized by the moderator on the site
Very helpful :) Thank you!
There are no comments posted here yet
Load More
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations