-
-
03 Nov 2021 20:38:47 UTC
- Distribution: Spreadsheet-XLSX
- Module version: 0.17
- Source (raw)
- Browse (raw)
- Changes
- How to Contribute
- Repository
- Issues (63)
- Testers (909 / 13 / 0)
- Kwalitee
Bus factor: 1- 52.87% Coverage
- License: perl_5
- Activity
24 month- Tools
- Download (78.07KB)
- MetaCPAN Explorer
- Permissions
- Subscribe to distribution
- Permalinks
- This version
- Latest version
and 2 contributors-
Dmitry Ovsyanko
- Mike Blackwell <mike.blackwell@rrd.com
- Dependencies
- Archive::Zip
- Spreadsheet::ParseExcel
- and possibly others
- Reverse dependencies
- CPAN Testers List
- Dependency graph
NAME
Spreadsheet::XLSX - Perl extension for reading MS Excel 2007 files;
SYNOPSIS
use Text::Iconv; my $converter = Text::Iconv->new("utf-8", "windows-1251"); # Text::Iconv is not really required. # This can be any object with the convert method. Or nothing. use Spreadsheet::XLSX; my $excel = Spreadsheet::XLSX->new('test.xlsx', $converter); foreach my $sheet (@{$excel->{Worksheet}}) { printf("Sheet: %s\n", $sheet->{Name}); $sheet->{MaxRow} ||= $sheet->{MinRow}; foreach my $row ($sheet->{MinRow} .. $sheet->{MaxRow}) { $sheet->{MaxCol} ||= $sheet->{MinCol}; foreach my $col ($sheet->{MinCol} .. $sheet->{MaxCol}) { my $cell = $sheet->{Cells}[$row][$col]; if ($cell) { printf("( %s , %s ) => %s\n", $row, $col, $cell->{Val}); } } } }
DESCRIPTION
This module is a (quick and dirty) emulation of Spreadsheet::ParseExcel for Excel 2007 (.xlsx) file format. It supports styles and many of Excel's quirks, but not all. It populates the classes from Spreadsheet::ParseExcel for interoperability; including Workbook, Worksheet, and Cell.
SEE ALSO
- Spreadsheet::ParseXLSX
-
This module has some serious issues with the way it uses regexs for parsing the XML. I would strongly encourage switching to Spreadsheet::ParseXLSX which takes a more reliable approach.
- Text::CSV_XS, Text::CSV_PP
- Spreadsheet::ParseExcel
- Spreadsheet::ReadSXC
- Spreadsheet::BasicRead
-
for xlscat likewise functionality (Excel only)
- Spreadsheet::ConvertAA
-
for an alternative set of
cell2cr()
/cr2cell()
pair - Spreadsheet::Perl
-
offers a Pure Perl implementation of a spreadsheet engine. Users that want this format to be supported in Spreadsheet::Read are hereby motivated to offer patches. It's not high on my todo-list.
- xls2csv
-
https://metacpan.org/release/KEN/xls2csv-1.07 offers an alternative for my
xlscat -c
, in the xls2csv tool, but this tool focusses on character encoding transparency, and requires some other modules. - Spreadsheet::Read
-
read the data from a spreadsheet (interface module)
AUTHOR
Dmitry Ovsyanko, <do@eludia.ru>, http://eludia.ru/wiki/
Patches by:
Steve Simms Joerg Meltzer Loreyna Yeung Rob Polocz Gregor Herrmann H.Merijn Brand endacoe Pat Mariani Sergey Pushkin
ACKNOWLEDGEMENTS
Thanks to TrackVia Inc. (http://www.trackvia.com) for paying for Rob Polocz working time.
COPYRIGHT AND LICENSE
Copyright (C) 2008 by Dmitry Ovsyanko
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.8.8 or, at your option, any later version of Perl 5 you may have available.
Module Install Instructions
To install Spreadsheet::XLSX, copy and paste the appropriate command in to your terminal.
cpanm Spreadsheet::XLSX
perl -MCPAN -e shell install Spreadsheet::XLSX
For more information on module installation, please visit the detailed CPAN module installation guide.