On Tue, 17 Jul 2018 21:21:30 Arno Welzel wrote:
> Stefan Froehlich:
> > Größtes Manko von SpreadsheetML ist, dass prinzipbedingt keine
> > Grafiken erlaubt sind, weshalb ich mich immer wieder einmal nach
> > Alternativen umsehe.
> Wieso "prinzipbedingt"?
Weil SpreadsheetML nun einmal keine Anweisungen dafür bereithält.
Wobei ich eventuell zu unpräise war: Ich meinte das "echte"
SpreadsheetML, also das XML, das Microsoft mit Office2003 in einer
einzigen (unkomprimierten) XML-Datei ausgeliefert hat:
<
https://de.wikipedia.org/wiki/SpreadsheetML>.
Das, was PhpSpreadsheet als "SpreadsheetML" bezeichnet, ist ja
bereits eine komplexe ZIP-Datei, die *auch* XML-Dateien enthält. Da
kann ich so grausame Dinge, wie ich sie momentan bei Bedarf mit
Smarty anstelle, nicht machen. Z.B. auf Kundenwunsch mal eben eine
Summenspalte mit bedingter Formatierung mitten in das fix-fertige
Excel-Sheet einzubauen, ohne an der Software selbst auch nur eine
Zeile zu ändern:
#v+
<ss:Cell ss:StyleID="amount{if $nosum}W{/if}_{$specsheet->getDefaultDecimals()}" ss:Formula="=IF(RC{$cols.offered}="{t}ja{/t}",0{foreach $specsheet->getColumns()|sort as $column}+ROUND(RC{$cols.firstcolumn+2*$column@index},{$specsheet->getDefaultDecimals()}){/foreach},"")">
<ss:Data ss:Type="Number"></ss:Data>
</ss:Cell>
#v-
Bei einer via PhpSpreadsheet geöffneten Vorlage müsste ich das
Wobei natürlich in Excel2007-Dateien ein sehr ähnlich aufgebautes
XML-File steckt. Ich muss einmal sehen, ob ich es schaffe, dafür ein
Tempalte zu erstellen und das dann mit den Grafik- und Style-Dateien
zusammen in ein XLSX zu verpacken. Das wäre momentan die ultimative
Lösung.
Servus,
Stefan
PS: Ich lese gerade auf
<
https://phpspreadsheet.readthedocs.io/en/develop/references/features-cross-reference/>,
dass Zellenformatierung momentan für Excel noch nicht unterstützt
wird. Damit scheidet das eh aus; zum Lesen ist es aber auch jetzt
schon weitgehend brauchbar, solange das Sheet nicht
TOKEN_SUBTYPE_UNION verwendet, also Dinge wie "=RANK(B1, (C1, D1))";
dass das nicht geht, habe ich auf die harte Tour gelernt.
Stefan - die grenzenlosste Herausforderung seit der Steinzeit.
(Sloganizer)