Note: The other languages of the website are Google-translated. Back to English

Excelで一度に複数の行または列を個別に並べ替える方法は?

Excelでは、並べ替え機能を適用して、列の範囲内のXNUMXつの行または列のみを並べ替えることができますが、複数の行または列を一度に個別に並べ替える必要がある場合は、次のスクリーンショットを表示します。 Excelでこのタスクを解決する簡単な方法はありますか?

複数の列を並べ替えるドキュメント1

VBAコードを使用して複数の列を一度に個別に並べ替える

VBAコードを使用して複数の行を一度に個別に並べ替える


矢印青い右バブル VBAコードを使用して複数の列を一度に個別に並べ替える

複数の列を昇順で個別に並べ替えるには、次のVBAコードが役立つ場合があります。次のようにしてください。

1。 を押し続けます Alt + F11 キーを押して アプリケーション向け Microsoft Visual Basic 窓。

2に設定します。 OK をクリックします。 インセット > モジュール、次のコードをに貼り付けます モジュール 窓。

VBAコード:一度に複数の列を個別に並べ替えます。

Sub SortIndividualJR()
'Updateby Extendoffice
    Dim xRg As Range
    Dim yRg As Range
    Dim ws As Worksheet
    Set ws = ActiveSheet
    On Error Resume Next
    Set xRg = Application.InputBox(Prompt:="Range Selection:", _
                                    Title:="Kutools for excel", Type:=8)
    Application.ScreenUpdating = False
    For Each yRg In xRg
        With ws.Sort
            .SortFields.Clear
            .SortFields.Add Key:=yRg, Order:=xlAscending
            .SetRange ws.Range(yRg, yRg.End(xlDown))
            .Header = xlNo
            .MatchCase = False
            .Apply
        End With
    Next yRg
    Application.ScreenUpdating = True
End Sub

3。 次に、 F5 このコードを実行するためのキーを押すと、各列に基づいて並べ替えるデータ範囲を選択するように促すプロンプトボックスが表示されます。スクリーンショットを参照してください。

複数の列を並べ替えるドキュメント2

4。 そして、 OK、各列は一度に依存してソートされています。スクリーンショットを参照してください。

複数の列を並べ替えるドキュメント1


矢印青い右バブル VBAコードを使用して複数の行を一度に個別に並べ替える

複数の行を個別に並べ替える場合は、VBAコードもここにあります。

1。 各行に基づいて並べ替えるデータを選択します。

複数の列を並べ替えるドキュメント3

2。 を押し続けます Alt + F11 キーを押して アプリケーション向け Microsoft Visual Basic 窓。

3に設定します。 OK をクリックします。 インセット > モジュール、次のコードをに貼り付けます モジュール 窓。

VBAコード:一度に複数の行を個別に並べ替えます。

Sub SortIndividualR()
'Updateby Extendoffice
    Dim xRg As Range, yRg As Range
    If TypeName(Selection) <> "Range" Then Exit Sub
    Set xRg = Selection
    If xRg.Count = 1 Then
        MsgBox "Select multiple cells!", vbExclamation, "Kutools for Excel"
        Exit Sub
    End If
    With Application
        .ScreenUpdating = False
        .EnableEvents = False
        .Calculation = xlCalculationManual
    End With
    Application.ScreenUpdating = False
    For Each yRg In xRg.Rows
        yRg.Sort Key1:=yRg.Cells(1, 1), _
        Order1:=xlAscending, _
        Header:=xlNo, _
        Orientation:=xlSortRows
    Next yRg
    With Application
        .ScreenUpdating = True
        .EnableEvents = True
        .Calculation = xlCalculationAutomatic
    End With
    Application.ScreenUpdating = True
End Sub

4。 次に、 F5 このコードを実行するためのキー。各行のデータは一度に並べ替えられています。スクリーンショットを参照してください。

複数の列を並べ替えるドキュメント4


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

Kutools for Excelはほとんどの問題を解決し、生産性を80%向上させます

  • 再利用: すばやく挿入 複雑な数式、チャート および以前に使用したものすべて。 セルを暗号化する パスワード付き。 メーリングリストを作成する そしてメールを送る...
  • スーパーフォーミュラバー (複数行のテキストと数式を簡単に編集できます); 読書レイアウト (多数のセルを簡単に読み取って編集する); フィルター範囲に貼り付け...
  • セル/行/列をマージする データを失うことなく; 分割セルコンテンツ; 重複する行/列を組み合わせる...重複セルを防止します。 範囲を比較する...
  • [複製]または[一意]を選択します 行; 空白行を選択 (すべてのセルは空です); スーパーファインドとファジーファインド 多くのワークブックで; ランダム選択...
  • 正確なコピー 数式参照を変更せずに複数のセル。 参照の自動作成 複数のシートに; 箇条書きを挿入、チェックボックスなど...
  • テキストを抽出、テキストの追加、位置による削除、 スペースを削除する; ページング小計の作成と印刷。 セルの内容とコメントを変換する...
  • スーパーフィルター (フィルタースキームを保存して他のシートに適用します); 高度な並べ替え 月/週/日、頻度など。 特殊フィルター 太字、斜体...
  • ワークブックとワークシートを組み合わせる; キー列に基づいてテーブルをマージします。 データを複数のシートに分割; xls、xlsx、PDFをバッチ変換...
  • 300 以上の強力な機能. Office / Excel 2007-2021 および 365 をサポートします。すべての言語をサポートします。 企業や組織に簡単に導入できます。 フル機能の 30 日間無料トライアル。 60日間の返金保証。
kteタブ201905

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

  • Word、Excel、PowerPointでタブ付きの編集と読み取りを有効にする、パブリッシャー、アクセス、Visioおよびプロジェクト。
  • 新しいウィンドウではなく、同じウィンドウの新しいタブで複数のドキュメントを開いて作成します。
  • 生産性を 50% 向上させ、毎日何百回もマウス クリックを減らすことができます!
officetab下部
コメントを並べ替える
コメント (11)
まだ評価はありません。 最初に評価してください!
このコメントは、サイトのモデレーターによって最小化されました
列を並べ替えようとすると、指定された範囲外のデータが並べ替えられます。 どうしてこれなの?
このコメントは、サイトのモデレーターによって最小化されました
それは素晴らしい働きをします! ありがとう !
このコメントは、サイトのモデレーターによって最小化されました
¿
このコメントは、サイトのモデレーターによって最小化されました
私はこれが大好きです。各列を個別に色で並べ替える機能に興味があります。 私はこれを試しましたが、うまくいきませんでした:


範囲としての薄暗いxRg
Dim yRg As Range
ワークシートとして薄暗い
ws=ActiveSheetを設定します
エラーで次の再開
xRg = Application.InputBox(Prompt:= "Range Selection:"、_を設定します
Title:= "Kutools for excel"、Type:= 8)
Application.ScreenUpdating = False
xRgの各yRgについて
ws.Sortを使用
.SortFields.Clear
.SortFields.Add Key:= yRg、_
SortOn:= xlSortOnCellColor、Order:= xlDescending、DataOption:= xlSortNormal
.SetRange ws.Range(yRg、yRg.End(xlDown))
.Header = xlNo
.MatchCase = False
。申し込み
最後に
次のyRg
Application.ScreenUpdating = True
End Subの
このコメントは、サイトのモデレーターによって最小化されました
どうもありがとうございました。 それは本当に役に立ちました。 色で並べ替える方法も教えてください。 26の列があり、それぞれにフォントの色で識別されるさまざまな種類のアイテムがあります。 すべての列を個別に、ただし特定の色順にアルファベット順に並べたいと思います。 どうすればよいですか?
このコメントは、サイトのモデレーターによって最小化されました
あなたはこの解決策で私にいくつかの頭痛の種を救ったばかりです! トンありがとう!
このコメントは、サイトのモデレーターによって最小化されました
素晴らしい投稿、ありがとうございました!
このコメントは、サイトのモデレーターによって最小化されました
Спасиботебечеловек!!
このコメントは、サイトのモデレーターによって最小化されました
私のデータ範囲は 0 ~ 100 です。 一度に複数の行を並べ替えようとすると、データが 100 から始まり、残りが数値的に最小から最大に並べ替えられ、100 が範囲の最小側に配置されます。 どうすればこれを修正できますか?
このコメントは、サイトのモデレーターによって最小化されました
アップデート; 数字の最初の桁のみでソートされていることに気付きました - 整数でソートするにはどうすればよいですか?
このコメントは、サイトのモデレーターによって最小化されました
こんにちは、デヴィンさん
コードはワークシートでうまく機能します。 ここに Excel ファイルまたはデータのスクリーンショットをアップロードしていただけますか? それで、問題がどこにあるかを確認するのを手伝うことができますか?
ありがとうございました!
ここにはまだコメントが投稿されていません
あなたのコメントを残す
ゲストとして投稿
×
この投稿を評価:
0   文字
推奨される場所

フォローする

著作権©の2009 - WWW。extendoffice.com。 | | 全著作権所有。 搭載 ExtendOffice。 | サイトマップ
MicrosoftおよびOfficeのロゴは、米国MicrosoftCorporationの米国およびその他の国における商標または登録商標です。
SectigoSSLで保護