Share via


NamedRange.Sort 方法

排序 NamedRange 控制項中的資料。

命名空間:  Microsoft.Office.Tools.Excel
組件:  Microsoft.Office.Tools.Excel (在 Microsoft.Office.Tools.Excel.dll 中)

語法

'宣告
Function Sort ( _
    Key1 As Object, _
    Order1 As XlSortOrder, _
    Key2 As Object, _
    Type As Object, _
    Order2 As XlSortOrder, _
    Key3 As Object, _
    Order3 As XlSortOrder, _
    Header As XlYesNoGuess, _
    OrderCustom As Object, _
    MatchCase As Object, _
    Orientation As XlSortOrientation, _
    SortMethod As XlSortMethod, _
    DataOption1 As XlSortDataOption, _
    DataOption2 As XlSortDataOption, _
    DataOption3 As XlSortDataOption _
) As Object
Object Sort(
    Object Key1,
    XlSortOrder Order1,
    Object Key2,
    Object Type,
    XlSortOrder Order2,
    Object Key3,
    XlSortOrder Order3,
    XlYesNoGuess Header,
    Object OrderCustom,
    Object MatchCase,
    XlSortOrientation Orientation,
    XlSortMethod SortMethod,
    XlSortDataOption DataOption1,
    XlSortDataOption DataOption2,
    XlSortDataOption DataOption3
)

參數

  • Type
    型別:System.Object
    指定要排序哪一個項目。只有在排序樞紐分析表時才使用這個引數。
    可以是下列其中一個 XlSortType 值:
    xlSortLabels .根據標籤排序樞紐分析表。
    xlSortValues .根據值排序樞紐分析表。
  • Header
    型別:Microsoft.Office.Interop.Excel.XlYesNoGuess
    指定第一列是否包含標題。不能在排序樞紐分析表時使用。
    可以是下列其中一個 XlYesNoGuess 值:
    xlGuess .讓 Microsoft Office Excel 判斷是否有標題,並判斷標題的位置 (如果有的話)。
    xlNo .(應該排序整個範圍)。
    xlYes .(不應排序整個範圍)。
  • OrderCustom
    型別:System.Object
    這個引數是自訂排列次序清單的整數位移,以 1 為起始。如果您省略 OrderCustom,則使用正常排序。
  • MatchCase
    型別:System.Object
    true 表示執行區分大小寫的排序,false 表示執行不區分大小寫的排序。不能在排序樞紐分析表時使用。

傳回值

型別:System.Object

備註

每次使用這個方法時,會為特定工作表儲存 Header、Order1、Order2、Order3、OrderCustom 和 Orientation 的設定。 如果沒有為這些引數指定值,下次您呼叫這個方法時便會使用已儲存的值。 如果您選擇不使用已儲存的值,請在每次使用這個方法時明確設定這些引數。

無法轉換為數字資料的文字字串會正常排序。

如果這個方法未定義引數,則 Microsoft Office Excel 會以遞增順序排序選取範圍。

選擇性參數

如需選擇性參數的詳細資訊,請參閱Office 方案中的選擇性參數

範例

下列程式碼範例會將一組整數放置於儲存格 A1 到 A5,然後使用 Sort 方法以遞增順序排序資料。

這是示範文件層級自訂的範例。

    Private Sub SortNamedRange()
        ' Set some data in a range of cells.
        Me.Range("A1").Value2 = 30
        Me.Range("A2").Value2 = 10
        Me.Range("A3").Value2 = 20
        Me.Range("A4").Value2 = 50
        Me.Range("A5").Value2 = 40

        ' Create a NamedRange that refers to the range.
        Dim namedRange1 As Microsoft.Office.Tools.Excel.NamedRange _
            = Me.Controls.AddNamedRange(Me.Range("A1", "A5"), _
            "namedRange1")

        ' Sort the NamedRange.
        namedRange1.Sort(Me.Range("A1", "A5"), _
            Excel.XlSortOrder.xlAscending, , , _
            Excel.XlSortOrder.xlAscending, , _
            Excel.XlSortOrder.xlAscending, Excel.XlYesNoGuess.xlNo, , , _
            Excel.XlSortOrientation.xlSortColumns, _
            Excel.XlSortMethod.xlStroke, _
            Excel.XlSortDataOption.xlSortNormal, _
            Excel.XlSortDataOption.xlSortNormal, _
            Excel.XlSortDataOption.xlSortNormal)
    End Sub

private void SortNamedRange()
{
    // Set some data in a range of cells.
    this.Range["A1"].Value2 = 30;
    this.Range["A2"].Value2 = 10;
    this.Range["A3"].Value2 = 20;
    this.Range["A4"].Value2 = 50;
    this.Range["A5"].Value2 = 40;

    // Create a NamedRange that refers to the range.
    Microsoft.Office.Tools.Excel.NamedRange namedRange1 =
        this.Controls.AddNamedRange(this.Range["A1", "A5"],
        "namedRange1");

    // Sort the NamedRange.
    namedRange1.Sort(this.Range["A1", "A5"],
        Excel.XlSortOrder.xlAscending,
        missing,
        missing,
        Excel.XlSortOrder.xlAscending,
        missing,
        Excel.XlSortOrder.xlAscending,
        Excel.XlYesNoGuess.xlNo,
        missing,
        missing,
        Excel.XlSortOrientation.xlSortColumns,
        Excel.XlSortMethod.xlStroke,
        Excel.XlSortDataOption.xlSortNormal,
        Excel.XlSortDataOption.xlSortNormal,
        Excel.XlSortDataOption.xlSortNormal);
}

.NET Framework 安全性

請參閱

參考

NamedRange 介面

Microsoft.Office.Tools.Excel 命名空間