Arbeiten mit Spreadsheet Management

Arbeiten mit Spreadsheet Management

Arbeiten mit der Tabellenkalkulationsverwaltung

Die Tabellenkalkulationsverwaltung deckt die alltägliche Objektoberfläche des Crates ab: Arbeitsblätter, Zellensammlungen, typisierte Werte, Formeln, Styling und die strukturellen Merkmale, die eine Arbeitsmappe nutzbar machen. Der Einstiegspunkt ist immer ein Workbook.


Worksheets

Blätter werden über die Arbeitsblatt-Sammlungen der Arbeitsmappe verwaltet — Lesezugriff über get_worksheets, Veränderung über get_worksheets_mut. Blätter werden per Index (get(0)) oder Name (get_by_name) adressiert, mit set_name umbenannt und mit add_worksheet hinzugefügt:

let mut workbook = Workbook::new();
{
    let mut worksheets = workbook.get_worksheets_mut();
    let sheet = worksheets.get(0)?;
    sheet.set_name("Data")?;
}

Zugriff auf Zellen und typisierte Werte

Zellen werden im A1-Stil oder numerisch adressiert. get_by_index(row, column) eignet sich für generierte Layouts:

let mut cells = sheet.get_cells_mut();
cells.get("A1")?.put_value_string("Month")?;
for month in 1..=12_u32 {
    cells
        .get_by_index(month, 0)
        .put_value_string(format!("Month {month}"))?;
}

Beim Auslesen gibt display_string_value den Anzeigetext zurück und value_type meldet den gespeicherten Typ.


Formeln mit zwischengespeicherten Ergebnissen

cells.get("F1")?.put_value_i32(10)?;
cells.get("G1")?
    .put_formula_with_cached_value("=F1*2", CellValue::Number(20.0))?;

Der zwischengespeicherte Wert ist das, was Excel vor seiner ersten Neuberechnung anzeigt — stellen Sie ihn bereit, damit die Nutzer der Datei sofort korrekte Ergebnisse sehen.


Styling

CellStyle aggregiert Font, Fill und Borders; StyleFlag steuert, welche Stil-Aspekte ein Update anwendet, sodass die vorhandene Formatierung erhalten bleibt, wo Sie sie nicht überschreiben. NumberFormat bestimmt, wie Werte dargestellt werden.


Seitenlayout und Navigation

PageSetup verwaltet das Drucklayout: PaperSizeType, PageOrientationType und Ränder. FreezePane hält Kopfzeilen beim Scrollen sichtbar, und die Sichtbarkeit von Zeilen und Spalten wird mit VisibilityType gesteuert.


Struktur: Tabellen, Namen, Kommentare, Hyperlinks

  • ListObject verwandelt einen Bereich in eine strukturierte Tabelle mit TableStyleType-Formatierung und TotalsCalculation Summenzeilen.
  • DefinedName und DefinedNameCollection verwalten benannte Bereiche.
  • Comment / CommentCollection und Hyperlink / HyperlinkCollection decken Annotation und Navigation ab.

Tipps und bewährte Verfahren

  • Behalte veränderliche Leihgaben (get_worksheets_mut, get_cells_mut) innerhalb eines Gültigkeitsblocks; speichere die Arbeitsmappe, nachdem der Block geschlossen wurde.
  • Verwende get_by_index für Schleifen und erzeugte Layouts; A1-Namen für feste Positionen.
  • Wende Stile mit einem StyleFlag an, damit nicht verwandte Formatierungen unbeeinflusst bleiben.
  • Benenne wichtige Bereiche mit DefinedName anstatt Adressen fest zu kodieren.

Häufige Probleme

ProblemUrsacheLösung
Ausleihfehler beim Speichern der ArbeitsmappeMutable Arbeitsblatt-Ausleihe ist noch aktivSchließe den Gültigkeitsbereichsblock, bevor du save aufrufst
Formel zeigt 0 in ExcelKein zwischengespeicherter Wert angegebenVerwenden Sie put_formula_with_cached_value mit dem erwarteten Ergebnis
Blatt nicht gefundenNamensabweichungAdresse nach Index oder prüfen Sie die Schreibweise von set_name

FAQ

Wie füge ich ein zweites Arbeitsblatt hinzu?

Rufen Sie add_worksheet im Arbeitsbuch auf und holen Sie es dann über die Arbeitsblatt-Sammlung per Index oder Name ab.

Kann ich im selben Durchlauf lesen und schreiben?

Ja — laden Sie mit Workbook::load_xlsx, ändern Sie über get_worksheets_mut und save zum selben oder zu einem neuen Pfad.

Wandeln typisierte Setter Werte um?

Es werden keine Konvertierungen durchgeführt: Jeder put_value_*-Setter speichert seinen nativen Typ; display_string_value gibt den Anzeigetext beim Lesen aus.


API Reference Zusammenfassung

Klasse/MethodeBeschreibung
Workbook.add_worksheetFügen Sie dem Arbeitsbuch ein Blatt hinzu
Worksheet.set_nameEin Blatt umbenennen
Worksheet.get_cells_mutVeränderbare Zellsammlung
CellMut.put_value_stringTypisierter String-Setter
CellMut.put_formula_with_cached_valueFormel plus zwischengespeichertes Ergebnis
CellStyleSchriftart-, Füll- und Rahmenformatierung
StyleFlagWählt aus, welche Stilaspekte gelten
PageSetupDruck- und Seitenlayout
ListObjectStrukturierte Tabellen

Siehe auch

 Deutsch