Spreadsheet::XLSX.3pm

Langue: en

Version: 2010-05-16 (ubuntu - 24/10/10)

Section: 3 (Bibliothèques de fonctions)

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

Text::CSV_XS, Text::CSV_PP
http://search.cpan.org/~hmbrand/

A pure perl version is available on http://search.cpan.org/~makamaka/

Spreadsheet::ParseExcel
http://search.cpan.org/~kwitknr/
Spreadsheet::ReadSXC
http://search.cpan.org/~terhechte/
Spreadsheet::BasicRead
http://search.cpan.org/~gng/ for xlscat likewise functionality (Excel only)
Spreadsheet::ConvertAA
http://search.cpan.org/~nkh/ for an alternative set of cell2cr () / cr2cell () pair
Spreadsheet::Perl
http://search.cpan.org/~nkh/ 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
http://search.cpan.org/~ken/ 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
http://search.cpan.org/~hmbrand/ read the data from a spreadsheet (interface module)

AUTHOR

Dmitry Ovsyanko, <do@eludia.ru<gt>, 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 (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.