ExcelScript.SortField interface

Представляет условие в операции сортировки.

Свойства

ascending

Указывает, выполняется ли сортировка по возрастанию.

color

Указывает цвет, который является целевым для условия, если сортировка выполняется по цвету шрифта или ячейки.

dataOption

Представляет дополнительные параметры сортировки для этого поля.

icon

Указывает значок, который является целевым объектом условия, если сортировка находится на значке ячейки.

key

Указывает столбец (или строку в зависимости от ориентации сортировки), на котором находится условие. Представляется в виде расстояния от первого столбца (или строки).

sortOn

Указывает тип сортировки этого условия.

subField

Указывает подполе, которое является именем целевого свойства расширенного значения для сортировки.

Сведения о свойстве

ascending

Указывает, выполняется ли сортировка по возрастанию.

ascending?: boolean;

Значение свойства

boolean

color

Указывает цвет, который является целевым для условия, если сортировка выполняется по цвету шрифта или ячейки.

color?: string;

Значение свойства

string

Примеры

/**
 * This script sorts a range based on the color of the cells.
 * It brings all red cells to the top of the range.
 */
function main(workbook: ExcelScript.Workbook) {
  // Get the range (A1:D8) to sort from the current worksheet.
  const worksheet = workbook.getActiveWorksheet();
  const rangeToSort = worksheet.getRange("A1:D8");

  // Create a SortField for color sorting.
  // This sorts the rows based on the fill color of each row's cell in the first column.
  let colorSort: ExcelScript.SortField = {
    ascending: true,
    color: "FF0000", /* red */
    key: 0,
    sortOn: ExcelScript.SortOn.cellColor
  };

  // Apply the SortField to the range.
  rangeToSort.getSort().apply([colorSort]);
}

dataOption

Представляет дополнительные параметры сортировки для этого поля.

dataOption?: SortDataOption;

Значение свойства

Примеры

/**
 * This script sorts a table based on the values in column 1.
 * If the text of a column-1 value can be treated as a number, 
 * it will be sorted in numerical order, rather than Unicode order
 * (so 123 will come before 12.3).
 */
function main(workbook: ExcelScript.Workbook) {
  // Get the first table on the current worksheet.
  const currentSheet = workbook.getActiveWorksheet();
  const table = currentSheet.getTables()[0];

  // Create the sorting parameters.
  const countSortField: ExcelScript.SortField = {
    key: 1,
    ascending: true,
    dataOption: ExcelScript.SortDataOption.textAsNumber
  };

  // Apply the sort to the table.
  const sort = table.getSort();
  sort.apply([countSortField]);
}

icon

Указывает значок, который является целевым объектом условия, если сортировка находится на значке ячейки.

icon?: Icon;

Значение свойства

key

Указывает столбец (или строку в зависимости от ориентации сортировки), на котором находится условие. Представляется в виде расстояния от первого столбца (или строки).

key: number;

Значение свойства

number

Примеры

/**
 * This script sorts the used range of the current worksheet.
 */
function main(workbook: ExcelScript.Workbook) {
    // Get the used range of the current worksheet.
    const activeRange = workbook.getActiveWorksheet().getUsedRange();

    // Sort the rows in ascending order based on the last column.
    activeRange.getSort().apply(
        [{
            ascending: true,
            key: activeRange.getColumnCount() - 1
        }],
        false, /* Don't match case. */
        true,  /* Treat the first row as a header rows. */
        ExcelScript.SortOrientation.rows
    );
}

sortOn

Указывает тип сортировки этого условия.

sortOn?: SortOn;

Значение свойства

subField

Указывает подполе, которое является именем целевого свойства расширенного значения для сортировки.

subField?: string;

Значение свойства

string