summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJesse Luehrs <doy@tozt.net>2013-06-04 18:36:37 -0500
committerJesse Luehrs <doy@tozt.net>2013-06-04 18:36:37 -0500
commitfba724a60fad258b7b2b0279e1aabbf7b5704aec (patch)
tree7e79b9fe62828178d0a008e9213e5ed52fc6497a
parentd8b5d52995bdb5ecdaf2188cd5349739e7c83c89 (diff)
downloadspreadsheet-template-fba724a60fad258b7b2b0279e1aabbf7b5704aec.tar.gz
spreadsheet-template-fba724a60fad258b7b2b0279e1aabbf7b5704aec.zip
write out formulas properly
-rw-r--r--lib/Spreadsheet/Template/Writer/Excel.pm20
1 files changed, 15 insertions, 5 deletions
diff --git a/lib/Spreadsheet/Template/Writer/Excel.pm b/lib/Spreadsheet/Template/Writer/Excel.pm
index 58cc0c1..25efe99 100644
--- a/lib/Spreadsheet/Template/Writer/Excel.pm
+++ b/lib/Spreadsheet/Template/Writer/Excel.pm
@@ -209,11 +209,21 @@ sub _write_cell {
# XXX handle merged cells
- $sheet->$write_method(
- $row, $col,
- $data->{contents},
- (defined $format ? ($format) : ()),
- );
+ if (defined $data->{formula}) {
+ $sheet->write_formula(
+ $row, $col,
+ $data->{formula},
+ (defined $format ? ($format) : (undef)),
+ $data->{contents},
+ );
+ }
+ else {
+ $sheet->$write_method(
+ $row, $col,
+ $data->{contents},
+ (defined $format ? ($format) : ()),
+ );
+ }
}
sub _color {