Диапазоны групп для структуры с помощью API JavaScript для Excel
В этой статье представлен пример кода, в котором показано, как группировать диапазоны для структуры с помощью API JavaScript для Excel. Полный список свойств и методов, поддерживаемых объектом, см. в Range
разделе Класс Excel.Range.
Группирование строк или столбцов диапазона для структуры
Строки или столбцы диапазона можно сгруппировать для создания структуры. Эти группы можно свернуть и развернуть, чтобы скрыть и отобразить соответствующие ячейки. Это упрощает быстрый анализ данных в верхней строке. Используйте Range.group , чтобы создать эти группы структуры.
Структура может иметь иерархию, в которой более мелкие группы вложены в большие группы. Это позволяет просматривать структуру на разных уровнях. Изменение уровня видимого контура можно выполнить программным путем с помощью метода Worksheet.showOutlineLevels . Обратите внимание, что Excel поддерживает только восемь уровней групп структуры.
В следующем примере кода создается структура с двумя уровнями групп для строк и столбцов. На следующем рисунке показаны группировки этого контура. В примере кода сгруппированные диапазоны не включают строку или столбец элемента управления структурой (в этом примере "Итоги"). Группа определяет, что будет свернуто, а не строку или столбец с элементом управления .
await Excel.run(async (context) => {
let sheet = context.workbook.worksheets.getItem("Sample");
// Group the larger, main level. Note that the outline controls
// will be on row 10, meaning 4-9 will collapse and expand.
sheet.getRange("4:9").group(Excel.GroupOption.byRows);
// Group the smaller, sublevels. Note that the outline controls
// will be on rows 6 and 9, meaning 4-5 and 7-8 will collapse and expand.
sheet.getRange("4:5").group(Excel.GroupOption.byRows);
sheet.getRange("7:8").group(Excel.GroupOption.byRows);
// Group the larger, main level. Note that the outline controls
// will be on column R, meaning C-Q will collapse and expand.
sheet.getRange("C:Q").group(Excel.GroupOption.byColumns);
// Group the smaller, sublevels. Note that the outline controls
// will be on columns G, L, and R, meaning C-F, H-K, and M-P will collapse and expand.
sheet.getRange("C:F").group(Excel.GroupOption.byColumns);
sheet.getRange("H:K").group(Excel.GroupOption.byColumns);
sheet.getRange("M:P").group(Excel.GroupOption.byColumns);
await context.sync();
});
Удаление группирования из строк или столбцов диапазона
Чтобы разгруппировать группу строк или столбцов, используйте метод Range.ungroup . При этом внешний уровень удаляется из контура. Если несколько групп одного типа строки или столбца находятся на одном уровне в пределах указанного диапазона, все эти группы разгруппированы.
См. также
Office Add-ins