Excel - Wie formatiere ich Zellen in einer Arbeitsmappe, die mit dem xlsx-Paket unter Angular erstellt wurde
NB. Obwohl ich in erster Linie nach einer Antwort im Zusammenhang mit dem xlsx-Paket suche (da es scheinbar sehr empfohlen und diskutiert wird), fürchte ich, dass es unmöglich sein könnte. Daher bin ich auch offen dafür, eine andere Richtung einzuschlagen (solange sie kostenlos ist und für Angular/Excel funktioniert).
Ich habe xlxs gefunden und ich erstelle Excel-formatierte Dateien. Ich möchte den Stil ein wenig steuern, also habe ich die Eigenschaft s zu einer Zelle hinzugefügt, wie in den Kommentaren vorgeschlagen (Codebeispiel hier).
testMagic() {
const table = document.getElementById("donkey");
const workBook = XLSX.utils.table_to_book(table);
workBook.Sheets.Sheet1.A1.s = { font: { bold: true } };
XLSX.writeFile(workBook, "wonkey.xlsx");
}
Ich sehe jedoch keinen Unterschied in der heruntergeladenen Datei. Ich habe das Problem gegoogelt, aber die Kombination Angular und xlsx und Styling wird nicht häufig in Blogs behandelt.
Ich hoffe, dass es etwas ziemlich Einfaches zu lösen ist, das ich aufgrund von Verwirrung und Unwissenheit übersehe.
Antwort #1
Ich denke, Sie verwenden die Community-(kostenlose) Version des XLSX-Pakets. Und die Zellformatierung sowie andere zusätzliche Funktionen zur Anpassung von Zellformaten sind nur in der Pro-Version der Bibliothek verfügbar. Bitte prüfen Sie es hier.
Sie können hier offizielle Informationen überprüfen.
Dies ist die Community-Version. Wir bieten auch eine Pro-Version mit Leistungsverbesserungen, zusätzlichen Funktionen wie Styling und dediziertem Support an.
P.S.- Eine alternative Möglichkeit, das Excel-Blatt zu aktualisieren und die Zellen zu formatieren, ist die Verwendung des ExcelJS npm-Pakets. Weitere Einzelheiten zur Formatierung finden Sie hier. Siehe das Beispiel hier (StackBlitz).
Antwort #2
Diese Antwort ist ein wenig irrelevant zur Beschreibung der Frage, macht aber unter diesem Fragetitel Sinn.
Wenn Sie sich fragen, wie man eine Zelle in die Kategorie 'Text' formatiert, da sich Ihre Daten automatisch ändern (Zahl zu Datum/Telefonnummer zu exponentiell), gibt es einen Parameter, der beim Erstellen des Arbeitsblatts helfen kann.
raw:booleanVerwenden als:
const worksheet: XLSX.WorkSheet=XLSX.utils.table_to_sheet(tableElement, {raw:true});