Gruppieren von Bereichen für eine Gliederung mithilfe der Excel-JavaScript-API

Dieser Artikel enthält ein Codebeispiel, das zeigt, wie Bereiche für eine Gliederung mithilfe der Excel-JavaScript-API gruppiert werden. Eine vollständige Liste der Eigenschaften und Methoden, die das Range Objekt unterstützt, finden Sie unter Excel.Range-Klasse.

Gruppieren von Zeilen oder Spalten eines Bereichs für eine Gliederung

Zeilen oder Spalten eines Bereichs können gruppiert werden, um eine Gliederung zu erstellen. Diese Gruppen können reduziert und erweitert werden, um die entsprechenden Zellen auszublenden und anzuzeigen. Dies erleichtert die schnelle Analyse von Top-Line-Daten. Verwenden Sie Range.group , um diese Gliederungsgruppen zu erstellen.

Eine Gliederung kann eine Hierarchie aufweisen, in der kleinere Gruppen unter größeren Gruppen geschachtelt sind. Dadurch kann die Gliederung auf verschiedenen Ebenen angezeigt werden. Das Ändern der sichtbaren Gliederungsebene kann programmgesteuert über die Worksheet.showOutlineLevels-Methode erfolgen. Beachten Sie, dass Excel nur acht Ebenen von Gliederungsgruppen unterstützt.

Im folgenden Codebeispiel wird eine Gliederung mit zwei Gruppenebenen für die Zeilen und Spalten erstellt. Die folgende Abbildung zeigt die Gruppierungen dieser Gliederung. Im Codebeispiel enthalten die bereiche, die gruppiert werden, nicht die Zeile oder Spalte des Gliederungssteuerelements (in diesem Beispiel die "Summen"). Eine Gruppe definiert, was reduziert wird, nicht die Zeile oder Spalte mit dem Steuerelement.

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();
});

Bereich mit einer zweistufigen, zweidimensionale Kontur.

Entfernen der Gruppierung aus Zeilen oder Spalten eines Bereichs

Um die Gruppierung einer Zeilen- oder Spaltengruppe aufzuheben, verwenden Sie die Range.ungroup-Methode . Dadurch wird die äußerste Ebene aus der Gliederung entfernt. Wenn sich mehrere Gruppen desselben Zeilen- oder Spaltentyps innerhalb des angegebenen Bereichs auf derselben Ebene befinden, wird die Gruppierung aller Gruppen aufgehoben.

Siehe auch