Erweiterte Arbeitsmappen-Workflows
Dieser Leitfaden gruppiert die übergeordneten APIs, die am nützlichsten sind, wenn ein Arbeitsmappen-Workflow über das einfache Lesen und Schreiben von Zellen hinausgeht
Druckfertige PDF-Ausgabe
Klassische XLS- und moderne XLSX-Arbeitsmappen-, Arbeitsblatt- und Bereichs-PDF-Exporte rendern formatierte Werte, Zellfüllungen, Schriftfarbe und -hervorhebung, Ausrichtung, Rahmen, optionale Gitterlinien, Spaltenbreiten, Zeilenhöhen, manuelle Seitenumbrüche, wiederholte Drucktitel sowie dreiteilige Kopf- und Fußzeilen
Sheet.PageSetup.PrintArea := 'A1:H80';
Sheet.PageSetup.PrintTitleRows := '$1:$3';
Sheet.PageSetup.RightHeader := 'Page &P of &N';
Sheet.HPageBreaks.Add(45);
Workbook.SaveAsPDF('report.pdf');
Moderne Arbeitsmappen machen dieselben direkten Einstiegspunkte verfügbar über TXLSXWorkbook, TXLSXWorksheet, und TXLSXRange
ModernSheet.PrintArea := '$A$1:$H$80';
ModernSheet.PrintTitleRows := '$1:$3';
ModernSheet.AddRowBreak(45);
ModernWorkbook.SaveAsPDF('modern-report.pdf');
Text außerhalb von WinAnsi wird mit einer eingebetteten TrueType-CID-Schriftart und einer ToUnicode-Zuordnung geschrieben, damit Betrachter Unicode-Text rendern und extrahieren können
Festlegen TXLSPDFExport.UnicodeFontFile wenn eine Arbeitsmappe eine bestimmte Schriftart oder Hausschrift benötigt, undernfalls wählt der Exporter eine geeignete installierte Schriftart aus, sofern verfügbar
Fortschritt, Abbrechen und Diagnose
Verwenden OnProgressEx für Begin-, Work- und End-Aufrufenbacks und legen Sie dessen Abbrech-Argument fest, um einen Vorgang abzubrechen
Prüfen Diagnostics oder LastDiagnostic nach Speicher-, Öffnungs- oder Neuberechnungsfehlern, anstatt sich nur auf einen numerischen Rückgabewert zu verlassen
Nicht unterstützte OOXML-Paketteile
TXLSXWorkbook.PreserveUnsupportedParts ist standardmäßig auf true gesetzt und behält benutzerdefinierte Teile bei, die über unbekannte Stamm-, Arbeitsmappen-, Arbeitsblatt- oder Zeichnungsbeziehungen erreichbar sind
UnsupportedPartCount und UnsupportedPartBytes behaltene Inhalte melden, während ClearUnsupportedParts entfernt es absichtlich vor dem Speichern
Rich-Text-Zwischenablageaustausch
Bereichsebene aufrufen CopyToClipboard um sowohl tabellarischen Unicode-Text als auch CF_HTML zu veröffentlichen, einschließlich Anzeigeformatierung, Formeln, verbundener Zellen, Links und sicher in Anführungszeichen gesetzter eingebetteter Trennzeichen
VBA-Quellcodebearbeitung
Aktualisieren Sie nach dem Laden eines VBA-Projekts das eines vorhandenen Moduls SourceCode und speichern Sie die Arbeitsmappe oder den eigenständigen Speicher
Der Writer komprimiert nur den bearbeiteten Quellstream neu, während Stream-Präfixe und unberührter Projektinhalt erhalten bleiben
Klassische Formularsteuerelemente
CheckBox := Sheet.AddCheckBox('Approved', 2, 2, 3, 5);
ComboBox := Sheet.AddComboBox(5, 2, 6, 5);
ListBox := Sheet.AddListBox(8, 2, 12, 5);
Die zurückgegebenen typisierten Wrapper machen Beschriftungen, Steuerungstypen, Anker, Aufzählung und Löschung verfügbar
Selektive Format-Patches
Target.ApplyFormatPatch(Source, [xfpFont, xfpFill, xfpNumberFormat]);
Ein kleinerer Quellbereich wird kachelartig über ein größeres Ziel gelegt, und nicht ausgewählte Formatierungen sowie alle Zielwerte bleiben unverändert
Master-Detail-Datensatzexport
Aktivieren TDataToXLS.ReadDetailTables um verknüpfte Detaildatensätze unter jedem Masterdatensatz zu exportieren und zu aktivieren IndentDetailTables um eine Spalte Einzug pro Beziehungsebene hinzuzufügen
WordArt
Shape := Sheet.AddWordArt('HotXLS', 'textArchUp', 2, 2, 6, 8);
Shape.TextColor := $FF00A060;
Shape.OutlineColor := $FF17365D;
Der vollständige DrawingML-Anker übersteht spätere Öffnungs- und Speicherzyklen durch den Pfad zur Erhaltung der Rohzeichnungen
Siehe Demo\Delphi\FeatureShowcase für ein kompaktes ausführbares Beispiel, das PDF-Druck, Formularsteuerelemente, Format-Patches und WordArt kombiniert