Skip to content
Fetching contributors…
Cannot retrieve contributors at this time
838 lines (478 sloc) 22.4 KB
Revision history for Perl module Spreadsheet::WriteExcel.
2.40 2013-11-06
! Fix for minor typo/bug that caused issues with Math::BigInt.
RT 90061.
2.39 2013-06-06
! Added Debian patch for Pod encoding. RT #85897.
Thanks Gregor Herrmann.
2.38 2012-22-11
Maintenance release. Minor fixes only.
! Removed failing testcases to allow S::WE to be tested/packaged
on recent perls.
! Fix filter_column bug where filter is applied to the wrong column.
Merge pull request #4 from blazzy/master.
! Enabled set_zoom() for Chart worksheets. It was documented but
wasn't working. Reported by Praphull Kumar.
! Enabled set_tab_color() for Chart worksheets. It was documented
but wasn't working.
! Fix typo in docs. Closes RT#70432.
! Fix for rounding in test with longdoubles. Fixes RT#68954.
! Handle chart sheets with utf8 name. Fixes RT#67014.
! Fix for undefined formulas. Fixes RT#61560.
2.37 2010-02-02
+ Added set_chartarea() and set_plotarea() methods to set
chart and plot background colours and border lines.
! Fixed bug where embedded charts gave "Data may be lost"
warning. Reported by Andreas Strobitzer.
! Fixed issue where set_properties() didn't work with ::Big.
Marked ::Big as deprecated in the docs in favour of using
Spreadsheet::WriteExcel directly. Removed
2.36 2010-21-01
! Fix for bug that gave a name conflict error for repeat rows and
autofilters in some non-English versions of Excel.
! Fixed tab selection for Charts.
+ Added xl_range_formula() to Spreadsheet::WriteExcel::Utility to
help with creating chart ranges. Added example to Chart docs.
+ Added set_legend() method with initial legend formatting options.
+ Documented Worksheet methods that are applicable to Charts.
2.35 2010-10-01
+ Added support for Stock charts.
+ Added support for Scatter charts.
+ Improved Pie chart examples.
2.34 2010-08-01
+ Added support for Pie charts.
! Re-added index.html in docs dir for Debian (and others).
! Fix for incorrectly encoded string result in repeat_formula().
2.33 2010-03-01
+ Added support for embedded charts. See insert_chart().
2.32 2009-31-12
+ Added support for native charts. See
Column, Bar, Line and Area charts supported.
! Fixed Apache2::Const vars in example.
Thanks to Ryan Perry.
2.31 2009-10-12
! Fixed resources in Makefile.PL.
! Updated screenshots of example programs.
2.30 2009-25-11
! Updated Pod generator to include screenshots of example programs.
2.29 2009-25-11
! Made version 0.19 of OLE::Storage_Lite a prerequisite to avoid
issues when using set_properties with Win 7 or Gnumeric.
2.28 2009-22-11
! Fix to NAME section in to get CPAN to generate pod docs
for it.
2.27 2009-21-11
+ Added autogenerated
2.26 2009-13-11
+ Beta release of defined names.
! Fix for fuzzy images issue reported by Todd Eigenschink.
+ Added 25_position_object.t tests to cover above issue.
! Fixed bug where file size wasn't found for progressive JPEGs.
Reported by Yamashita Junji and Bruce Anderson II.
+ Added set_country() method.
! Fix for UTF8 strings passed to write_url().
Reported by Jon Schutz.
! Fixed very minor issue with uninitialised value for top
border colour in formats. Reported by Franz Fasching.
2.25 2008-09-09
! Fix for set_properties() bug due to 5.10/5.8 UTF-8 differences.
! Fix for failing tests due to localtime() issues.
2.24 2008-06-09
+ Added set_properties() method to set document properties.
Added test suite and example.
2.23 2008-10-08
+ Added Excel data validation with examples and test suite.
2.22 2008-19-07
+ Added JPEG support.
+ Added 29_process_jpg.t test for jpg dimension processing.
+ Turned off compatibility_mode() in Spreadsheet::WriteExcel::Big
which was on by accident.
+ Added "Warning about Office Service Pack 3" section to the
docs to explain Excel warnings with duplicate data.
+ Expanded "Dates and Time in Excel" section of the docs.
+ Added isa() to _process_images() to allow subclassing.
Reported by David Worenklein.
2.21 2008-09-03
! Fixed bug where UTF-8 strings in formulas weren't handled.
Thanks Sergey Zhuravlev.
! Fixed collapse outlines compatibility with Gnumeric
Reported by Barrie Slaymaker.
+ Added example.
+ Added document section about rewriting Excel files.
+ Minor security fix to Format to avoid eval and
additional fix for RT 24218.
Thanks to Bram.
+ Added increased compatibility with third party
Excel reading applications such as POI.
+ Added optional compatibility_mode() to fix problems
that can occur with Office SP3.
+ Fixed compatibility problem with Google Docs.
+ Added set_start_page() method for setting the start page
number when printing.
2.20 2007-06-10
+ Added autofilter() and filter_column() method and example.
+ Added embed_chart() method to allow extracted chart
templates to be embedded in a worksheet.
Added and examples.
+ Added the insert_image() method and proper Excel 97
style image handling for PNG and BMP.
Images now work with Gnumeric and OpenOffice.
insert_bitmap() is now deprecated.
! Made pane split optional when calling freeze_panes().
Also renamed thaw_panes() as split_panes(). The old
method name is still available, but deprecated.
! Renamed write_unicode() and write_unicode_le() methods
to the more explicit write_utf16be_string() and
write_utf16le_string(). The old method names are
still available, but deprecated.
2.19 2007-14-06
+ Beta testing only. Not released to CPAN.
2.18 2007-18-01
! Correct invalid user set_column() calls to prevent
crashes after Excel patch KB918419 is applied.
Thanks to Sharron McKenzie for debugging.
! Fixed bug when writing comments longer than 8219 bytes.
Reported by jscaglione.
! Fixed bug when using copy() with merged formats.
Reported by jscaglione.
! Fixed bug where $@ was clobbered during garbage collection.
Reported by afoxson.
! Removed all non-ascii characters from main docs to
avoid problems with troff and man.
Reported by Ken Williams.
+ Added autoloading of OLE::Storage_Lite, when available,
to create workbooks larger than 7MB. It is no longer
required to explicitly use ::Big.
+ Added handling of Unicode sheet names in formulas
as suggested by Zhur:
2.17 2006-21-05
+ Added set_tab_color() method and example (
+ Add set_page_view() method for Mac Excel view style
and better default worksheet dimensions.
+ Added simulated example.
+ Added simulated Autofit example (
! Fixed RT #17801, incorrect close value with filehandles.
Thanks to Josie.
! Changed comment font to Excel's default of Tahoma 8.
Reported by Stefano Maurri.
! Fixed bug that stopped Charts working in 2.16.
2.16 2006-06-01
+ Rewrote and reinstated the write_comment() method to take
account of the changes in the Excel 97+ comment format.
Currently conflicts with insert_bitmap(), see docs.
+ Added standard styles such as comma, percent and currency.
! Changed write_url() methods to allow numbers or formulas
as well as strings as the optional text.
Requested by many.
+ Documented use of encoding flag in add_worksheet() to allow
handling of UTF-16 sheet names.
+ Added encoding flag to merge_range() method to allow
handling of UTF-16 strings. Requested by many.
Added example program.
+ Added hide_zero() worksheet method to allow hiding of zero
values in cells.
+ Added print_across() worksheet method to allow changing of
the default print direction.
+ Added right_to_left() worksheet method to allow changing of
the default worksheet direction in eastern versions of Excel.
+ Documented the Worksheet hide() method.
+ Added and example programs.
+ Added tests for the internal methods used by write_comment().
2.15 2005-18-09
! Changed OLE container stream name from "Book" to "Workbook"
for compatibility with some third party apps.
Thanks Wieland Pusch and Kevin McMahon.
! Fixed bug that caused all worksheets to be selected in
OpenOfficeOrg causing strange linking of data between
Worksheets. Thanks M. Brodbelt. See
! Changed file creation from end of program to the start of
program in order to avoid race conditions and extra file
creation on VMS.
+ Added optional user supplied results for formulas as a
workaround for uncalculated values in some non-Excel apps.
Added example of above.
2.14 2005-09-05
! Fixed handling of Unicode font names.
2.13 2005-20-04
! Made it a fatal error to use a merged format in a non-
merged cell (and vice-versa). This is a temporary measure
to prevent people from shooting themselves in the foot
until the code can be refactored.
+ Add 01_merge_formats.t test for above.
+ Added date_time tests.
2.12 2005-22-03
+ Added further Unicode support. The following methods now
handle uft8 in perl 5.8:
+ Added example.
+ Added 01_add_worksheet.t test.
2.11 2004-30-09
- Removed undocumented date_time handling from write() to
avoid potential false matches.
+ Added add_write_handler() method to allow users to add
their own data handlers to write().
+ Added 4 write_handler examples.
2.10 2004-23-09
+ Added chart support via external templates.
Added and add_chart_ext() method to Workbook object.
Added /charts directory with examples and documentation
+ Added write_date_time() worksheet method for writing dates
and times in Excel date format.
Added example.
+ Added automatic Unicode handling via utf8 in perl 5.8 and
later. Thanks Mark Fowler.
Added several unicode_*.pl examples in different encodings.
Thanks to Sean Burke for the sample encodings.
+ Added example in order to answer frequently
asked question about writing an Excel file to a scalar.
2.04 2004-18-08
! Fixed handling of Euro symbol in num_format() strings.
! Renamed the Excel 5 style merge() format to the more correct
center_across(). Updated examples accordingly.
! Added bug warning about using merge formats outside of
merged ranges.
+ Fixed handling of doubled double quotes in formula strings.
Thanks to a tip from merlyn.
+ The 2.xx versions are now compatible with MS Access. Removed
statements to the contrary.
2.03 2004-04-07
! Fixed bug that prevented column outlines from displaying.
Thanks to Marc Rosenthal.
! Enhanced add_worksheet() name checking to exclude case-
insensitive duplicate names.
Thanks to James Wilkinson.
! Internal fix to number of rows in several (unseen) places.
+ Added mod_perl 2 example program from Matisse Enzer. Thanks.
2.02 2004-28-05
+ Fixed internal version numbers to keep happy.
Thanks to David Dyck.
+ Minor changes to and the html docs.
2.01 2004-27-05
This version is a MAJOR revision to Spreadsheet::WriteExcel. The
format of the Excel file that it produces has been updated from
Excel 5 to Excel 97. This allows support for long, 32k character
strings and Unicode.
Also note that this version can be 1.5 to 2 times slower than
previous versions and the write_comment() method has been
temporarily removed. These issues will be fixed in later releases.
+ Changed the default Excel format to Excel 97.
+ Added support for strings up to 32767 character.
+ Added support for Unicode strings.
+ Improved speed in relation to pre-release versions.
However, it is still slower than the 1.xx versions.
+ Improved support.
+ Added more examples:,,,,
+ Changed the distro dir structure.
- Temporarily removed write_comment() support since the Excel 5
version isn't compatible with Excel 97+.
1.01 2004-24-05
! Small non-bug fix to write_comment().
0.43 2004-28-04
! Fixed longstanding bug where page setup features didn't
show up in
! Fixed localised @_ bug when using threaded perls.
Thanks Tamas Gulacsi and Stephan Loescher.
0.42 2003-26-08
! Fixed bug when using IO::Sclalar object as a filehandle.
Thanks to Kyle R. Burton and David Robins.
! Fixed minor formula parser bug.
Thanks Michael Braig
! Fixed handling of column sizing for widths less than 1
unit (again). Thanks to Rubio (again).
! Failed new() returns undef instead of croak()ing as per docs.
0.41 2003-24-04
+ Added facility for adding outlines to worksheets. Added example. Thanks to Franco Venturi.
+ Moved write_comment() code into the core modules. It is now
possible to write cell comments.
+ Added option to return a slice from the sheets() method.
+ Added link to latest Excel97 pre-release.
! Changed, once more, the handling of temp files to avoid several
file closing bugs. Thanks to many.
! Fixed handling of column sizing for widths less than 1 unit.
Thanks Rubio.
! Renamed addworksheet() and addformat() to add_worksheet()
and add_format() for consistency with other method names.
Older names are supported but deprecated.
0.40 2002-21-12
! Fixed internal sheet indexing in formulas on some platforms.
This caused multi-sheet workbooks with formulas to crash.
Thanks Troy Daniels.
! Fixed non-lexical filehandles to prevent problems in
multi-threaded environments.
Thanks Ning Xie.
0.39 2002-23-09
+ Added the set_codepage() workbook method. This is mainly to
prevent a bug that caused Gnumeric to crash but it is also
useful for people working with non ascii chars on the Macintosh.
Thanks Jody Goldberg.
! Fixed the non-deletion of temporary files. Users of version
0.38 should probably clean up their tmp dirs manually.
Thanks Pierre Laplante.
! Changed default handling of set_fg_color and set_bg_color from
what Excel expected to what everyone else expected. Setting the
fill colour of a cell should now be more intuitive.
+ Replaced the merge_cells() method with the merge_range() method.
This is mainly to prevent the Excel 97 crashing bug that occurs
when merge_cells() is used correctly. It also provide a simpler
interface to the merge feature. Updated merge example programs.
! Refactored the error raising mechanism for formulas. The source
of errors should now be clearer.
! Minor internal fixes to
0.38 2002-29-08
+ Added formula caching to speed up the writing of formulas.
Thanks to Ron McKelvey.
+ Added handling of A:A column notation in formulas and
applicable worksheet methods.
+ Changed handling of numbers with leading zeroes so that they
can be treated as strings and the zeroes maintained.
+ Modified $workbook->close() to return the value of the system
file close.
+ Made file size exceeded a die() error instead of a warning.
+ Added option to hide row with the set_row() method
+ Added more examples:,, and
! Fixed write_url() when handling relative links in the current
directory. Thanks Bob Mackay Andre de Bruin
! Fixed handling of multiple AND()'s and OR()'s in formulas.
! Fixed bug when creating a very large number of files within a
single program on Windows.
! Added warning about Excel97 crashing bug with merge_cells().
! Fixed handling of parentheses in Worksheet names.
Thanks Jann Linder.
! Fixed minor bugs in Thanks Johann Hanne.
! Fixed File::Temp dependency in Makefile. Thanks to many.
0.37 2002-29-04
+ Added set_tempdir() method to allow a user defined temp
directory. This is mainly of use to IIS users.
+ Fixed default format behaviour for formats set via the set_row()
and set_column() methods.
+ Extended the hide_gridlines() method to allow hiding of screen
gridlines as well as print gridlines.
+ Added a workaround example for the 255 char
+ Added https match to url regex. Thanks The Tilghman.
0.36 2002-09-04
+ Added user definable colour palette. Thanks Bill Young.
+ Added and examples.
0.35 2002-18-03
+ Added internal and external hyperlinks. Thanks Ian Penman.
+ Added worksheet set_zoom() and set_print_scale().
! Changed default value of fit_to_pages() to allow printed output
to be one page wide and as long as required.
Thanks Michael Erickson.
! Changed handling of undefs in write() method. Thanks Hanc Pavel.
! Changed new() to return undef for file creation errors
Thanks Felipe Pérez Galiana.
! Added check for header/footer length. Thanks Peter Dintelmann.
! Added check for duplicate worksheet names. Thanks Keith Miller.
- Removed spurious return() to fix bug in set_repeat_rows().
Thanks Brian White.
! Added "use integer" when using shift << to avoid bug with
Perl 5.6.0 on HP-UX. Thanks Markus Schmitz, VSarkiss.
! Fixed minor bug in Thanks Sven Passig.
0.34 2001-23-10
+ Added Spreadsheet::WriteExcel::Utility module with helper
functions for row/col and dates.
+ Added write_row and write_col methods after many requests.
+ Added ability to insert bitmap images.
+ Added cell protection and formula hiding.
+ Added more examples.
0.33 2001-30-07
+ Added (hopefully) easier mechanism to add format properties.
+ Added more page setup options: repeat rows and columns, hide
gridlines, print area, fit to pages and page breaks.
! Added fix to protect print() from -l on the command line.
Thanks Cedric Bouvier and Kyle Krom.
+ Added more examples.
0.32 2001-17-05
+ Added panes option.
+ Added page setup options: paper type, orientation, headers
footers, centering.
+ Added panes example.
0.31 2001-12-04
! Fixed several minor and major bugs in
Thanks Shane Ashby and Borgar Olsen and Christian Kirsch.
+ Added external worksheet references to formulas.
+ Added A1 notation.
+ Added facility to new() to accept valid filehandles.
Thanks Peter Dintelmann.
+ Added more examples. Thanks Tom O'Sullivan.
! Updated example. Thanks to Takanori Kawai.
0.30 2001-26-02
+ Added formulas.
! Fixed docs for write_url(). Thanks James Holmes.
! Fixed bug when using a numeric format string of zeros.
Thanks Kenneth Stacey.
0.26 2001-01-02
! Fixed bug when using a border with the default colour. This
caused the cell format to become unchangeable from within Excel.
Thanks Shenyu Zheng.
! Changed worksheet code to automatically fall back to storing
data in memory if opening a tmp file fails.
0.25 2001-19-01
! Changed distro file format back to Unix line endings. The
accidental DOS format was causing install problems.
0.24 2001-14-01
+ Added write_url method.
+ Added set_merge() alias for set_align('merge') method.
+ Added warnings about deprecated code when running under -w flag.
! Documentation changes.
0.23 2000-10-12
+ Added customisable numeric formats.
+ Added set_row() method.
+ Added set_1904() method.
+ Added extra examples including contributions. Thanks to all.
+ Moved secondary modules to WriteExcel namespace to clean-up
Spreadsheet namespace which is now shared with ParseExcel.
! Fixed class data bug. Thanks Cedric Bouvier.
! Fixed Excel crashing!! bug in STYLE. Thanks Rich Sorden.
! Tidied up internal storage of FONTs and XFs.
+ Renamed set_col_width() method to set_column().
+ Renamed set_format() method to set_num_format().
0.22 2000-22-10
+ Added and the facility for cell formatting.
0.21 2000-01-10
+ Replaced direct access to worksheets array with a workbook
method; worksheets().
+ Added set_selection() and set_col_width() worksheet methods.
! Replaced the missing thats, including the that that were
in the icebox.
+ Added MS Access bug warning; thanks Harold Bamford.
0.20 2000-27-08
+ Added multiple worksheets and OLE wrapper. Now compatible with
Star Office, Gnumeric and XESS.
0.11 2000-25-08
! Changes to documentation. Explanation of how to use WriteExcel
in CGI's. Thanks Daniel Gardner.
0.10 2000-13-05
! Bug in close() and DESTROY sequence fixed. Thanks John Wren.
! Biff version number fixed. Thanks Aurthur@ais, and then unfixed.
! Shakey test and distro fixed. Thanks to many.
0.09 2000-01-02
! Code for writing DIMENSIONS updated to account for bug when
reading files with QuickView.
+ Renamed xl_write methods to write.
0.08 2000-16-01
First CPAN release. Spreadsheet::WriteExcel - Write text and
numbers to minimal Excel binary file.
Something went wrong with that request. Please try again.