xlsx.SetCellFormula(id, x, y, f$[, sheet]) xlsx.SetCellFormula(id, ref, f$[, sheet])
f$
angegebene. Nach Aufruf von diesem Befehl gibt xlsx.HaveCellFormula()
True
zurück. Es gibt zwei Möglichkeiten, die Zelle anzugeben,
deren Wert festgelegt werden soll: Sie können die zu verwendende
Zelle entweder angeben, indem Sie die Spalten- (x) und Zeilenposition (y)
der Zelle in den Argumenten x
und y
übergeben. Diese Positionen
beginnen bei 1 für die erste Spalte und Zeile. Alternativ können
Sie die Zelle auch angeben, indem Sie ihre Position im Parameter
ref
übergeben. Dies kann entweder eine Zeichenkette sein, z.B.
"A10" für die erste Zelle in der 10. Zeile oder ein Iteratorreferenz,
die vom Befehl xlsx.CellRange() zurückgegeben wird. Optional
können Sie auch den Index des zu verwendenden Arbeitsblatts
im optionalen Parameter sheet
übergeben (beginnend mit 1 für
das erste Arbeitsblatt). Wenn der Parameter sheet
weggelassen
wird, wird das mit xlsx.SetDefaultSheet() eingestellte
Arbeitsblatt verwendet.
Beachten Sie, dass die Formel ohne Gleichheitszeichen angegeben werden muss, z.B. müssen Sie "A1+A2" anstelle von "=A1+A2" verwenden. Beachten Sie auch, dass das XLSX-Plugin das Ergebnis der Formel nicht berechnet, d.h. Sie können nicht erwarten, dass xlsx.GetCellValue() das Berechnungsergebnis nach dem Festlegen einer Zellformel erhält. Um Formelwerte berechnen zu lassen, müssen Sie das XLSX-Dokument in Excel oder Calc von LibreOffice öffnen und speichern.
x
und y
weggelassen werdenxlsx.SetCellFormula(1, "A3", "A1+A2")Der obige Code setzt Zelle A3 auf die Summe der Zellen A1+A2.