In the resulting spreadsheet, column "C" shows up as expected, and for the most part, so does column "D", except for rows 10-19, and row 100. For those rows, the formula that is put in the cell is of the form =SUBTOTAL(9,B1: B(11*row)), where row is the row in the Excel file. Is this something that's documented that I missed, or is this a genuine bug?#!/usr/local/bin/perl -w use strict; use Spreadsheet::WriteExcel; my $workbook = Spreadsheet::WriteExcel->new("test.xls"); my $worksheet = $workbook->addworksheet("foo"); my $formula = $worksheet->store_formula('=SUBTOTAL(9,A1:B1)'); foreach my $row (0..99) { $worksheet->write($row, 0 , $row+1); $worksheet->write($row, 1 , $row+1); $worksheet->repeat_formula($row, 2, $formula, undef, 'A1', 'A' +.($row+1), 'B1', 'A'.($row+2)); $worksheet->repeat_formula($row, 3, $formula, undef, 'A1', 'B' +.($row+1), 'B1', 'B'.($row+2)); #$worksheet->repeat_formula($row, 2, $formula, undef, 'A1', 'A +'.($row +1), 'B1', 'B'.($row+1)); #$worksheet->repeat_formula($row, 5, $formula, undef, 'A1', 'D +'.($row +1), 'B1', 'E'.($row+1)); }
thor
In reply to Bug in Spreadsheet::WriteExcel? by thor
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |