次の方法で共有


Range.Sort メソッド (Excel)

値の範囲を並べ替えます。

構文

並べ替え (Key1Order1Key2TypeOrder2Key3Order3HeaderOrderCustomMatchCaseOrientationSortMethodDataOption1DataOption2DataOption3)

expressionRange オブジェクトを表す変数です。

パラメーター

名前 必須 / オプション データ型 説明
Key1 省略可能 バリアント型 範囲名 (String) または Range オブジェクトとして、最初の並べ替えフィールド 指定します。は、並べ替える値を決定します。
Order1 省略可能 XlSortOrder Key1 で指定した値の並び替え順序を指定します。
Key2 省略可能 バリアント型 2 番目の並べ替えフィールド。ピボットテーブルを並べ替えるときは使用できません。
Type 省略可能 バリアント型 ピボットテーブル内で並べ替える要素の種類を指定します。 XLSortLabels を指定して、ピボットテーブルの範囲の [行/列ラベル] 領域の experession範囲の対象となるラベルで並べ替えます。Key1 が R1C1 表記を使用して [値] または [サブ/総計] 領域のセルを追加的にターゲットとする場合は xLSortValues を指定します。
Order2 省略可能 XlSortOrder Key2 で指定された値の並べ替え順序を決定します。
Key3 省略可能 バリアント型 3 番目の並べ替えフィールド。ピボットテーブルを並べ替えるときは使用できません。
Order3 省略可能 XlSortOrder Key3 で指定した値の並び替え順序を指定します。
Header 省略可能 XlYesNoGuess 最初の行にヘッダー情報が含まれるかどうかを指定します。 xlNo は既定値です。Excel にヘッダーを決定させるには、xlGuess を指定します。
OrderCustom 省略可能 バリアント型 ユーザー設定の並べ替え順のリスト内の番号を示す、1 から始まる整数を指定します。
MatchCase 省略可能 バリアント型 大文字と小文字を区別する並べ替えを実行するには True 、大文字と小文字を区別しない並べ替えを実行するには False に設定します。ピボットテーブルでは使用できません。
Orientation 省略可能 XlSortOrientation 行で並べ替えるか (既定) または列で並べ替えるかを指定します。 列で並べ替えるには、 xlSortColumns 値を 1 に設定します。 xlSortRows の値を 2 に設定して行で並べ替えます (これが既定値です)。
SortMethod 省略可能 XlSortMethod 並べ替えの方法を指定します。
DataOption1 省略可能 XlSortDataOption Key1 で指定した範囲内のテキストを並べ替える方法を指定します。はピボットテーブルの並べ替えに適用されません。
DataOption2 省略可能 XlSortDataOption Key2 で指定された範囲内のテキストを並べ替える方法を指定します。はピボットテーブルの並べ替えに適用されません。
DataOption3 省略可能 XlSortDataOption Key3 で指定した範囲内のテキストを並べ替える方法を指定します。はピボットテーブルの並べ替えに適用されません。

戻り値

バリアント型

次の使用例は、 ColorIndex プロパティを使用して列 A のセルの色の値を取得し、その値を使用して色で範囲を並べ替えます。

Sub ColorSort()
   'Set up your variables and turn off screen updating.
   Dim iCounter As Integer
   Application.ScreenUpdating = False
   
   'For each cell in column A, go through and place the color index value of the cell in column C.
   For iCounter = 2 To 55
      Cells(iCounter, 3) = _
         Cells(iCounter, 1).Interior.ColorIndex
   Next iCounter
   
   'Sort the rows based on the data in column C
   Range("C1") = "Index"
   Columns("A:C").Sort key1:=Range("C2"), _
      order1:=xlAscending, header:=xlYes
   
   'Clear out the temporary sorting value in column C, and turn screen updating back on.
   Columns(3).ClearContents
   Application.ScreenUpdating = True
End Sub

サポートとフィードバック

Office VBA またはこの説明書に関するご質問やフィードバックがありますか? サポートの受け方およびフィードバックをお寄せいただく方法のガイダンスについては、Office VBA のサポートおよびフィードバックを参照してください。