Range.Sort メソッド (Excel)

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

構文

並べ替え (Key1Order1Key2TypeOrder2Key3Order3ヘッダーOrderCustomMatchCaseOrientationSortMethodDataOption1DataOption2DataOption3)

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

パラメーター

名前 必須 / オプション データ型 説明
Key1 省略可能 バリアント型 範囲名 (String) または Range オブジェクトとして、最初の並べ替えフィールドを指定します。は、並べ替える値を決定します。
Order1 省略可能 XlSortOrder Key1 で指定した値の並び替え順序を指定します。
Key2 省略可能 バリアント型 2 番目の並べ替えフィールド。ピボットテーブルを並べ替えるときは使用できません。
Type 省略可能 バリアント型 ピボットテーブル内で並べ替える要素の種類を指定します。 xLSortLabels を指定して、ピボットテーブルの範囲の行/列ラベル領域の experession 範囲 の対象となるラベルで並べ替えるか、Key1 が R1C1 表記を使用して Values 領域または Sub/Grand Totals 領域のセルを追加でターゲットとする場合は 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 のサポートおよびフィードバックを参照してください。