Here is a tool I've cobbled together with Spreadsheet::ParseExcel:
Code:
#!/usr/bin/perl
#!/usr/bin/perl -w
# For each tab (worksheet) in a file (workbook),
# spit out columns separated by ",",
# and rows separated by c/r.
use Spreadsheet::ParseExcel;
use strict;
my $filename = shift || "Book1.xls";
my $e = new Spreadsheet::ParseExcel;
my $eBook = $e->Parse($filename);
my $sheets = $eBook->{SheetCount};
my ($eSheet, $sheetName);
foreach my $sheet (0 .. $sheets - 1) {
$eSheet = $eBook->{Worksheet}[$sheet];
$sheetName = $eSheet->{Name};
# Comment out the below line if you don't care about multiple worksheets
print "#Worksheet $sheet: $sheetName\n";
next unless (exists ($eSheet->{MaxRow}) and (exists ($eSheet->{MaxCol})));
foreach my $row ($eSheet->{MinRow} .. $eSheet->{MaxRow}) {
foreach my $column ($eSheet->{MinCol} .. $eSheet->{MaxCol}) {
if (defined $eSheet->{Cells}[$row][$column])
{
print $eSheet->{Cells}[$row][$column]->Value . "\t";
} else {
print "\t";
}
}
print "\n";
}
}
It outputs tab-separated text to standard output, like:
Code:
# Worksheet 0: Current members
column1 column2 column3
...
...
# worksheet 1: worksheet
...
...
...
Hi ,
can any one tell me,"How to extract the same format from existing excel file to new excel file " using Spreadsheet::WriteExcel or Spreadsheet::ParseExcel module ???
Example_pgm:
Below program is used to read existing excel file..In this program "my $cell = $_;" line is used to... (0 Replies)
Hi folks,
I am working on assignment that captures all the records(2 columns one column contains names and other contain date of birth) from excel sheet stored in a directory and checks for current date and month.
If it matches current date and month then the matched records are printed as... (1 Reply)
I have a excel sheet with contains the records as below..
also uploaded the input excelsheet and the output excel sheet(expected output).
322mpls32.net.xyz.comBW: 44.0 M Hrly Avg (IN /... (1 Reply)
There is a perl scriptwhich will read Excel sheet and create one file(.v) .
Excel sheet:::
A B C D
1 cpu_dailog 2 3 4
Perl will create the file(.v) like thsi :::
assert (cpu_dailog_iso ==2) ;
assert (cpu_dailog_reset ==3);
assert (cpu_dailog_idle... (3 Replies)
Hi folks,
I have a requirement in perl to print all the hyperlink from the spreadsheet(xlsx).
Spreadsheet contains few lines of hyperlink data (pic attached).
P.S. Hyperlink is behind the data and not visible in excel sheet directly.
Now using perl script I need to copy the hyperlinks in... (3 Replies)
Hi Folks,
Can you please advise for any script in unix such that for example , i have 3 different excel sheet at the location /ppt/gfr/exc so the name s of the excel sheet are
1excel.xslx
2excel.xslx
3excel.xslx
now in these 3 different excel sheet there is lot of data for example each... (3 Replies)
Hello,
I'm trying to write a script to export a txt file to excel. The text file is a delimited with commas
Example:
Report Date,12/12/2014
Report By, Person
Issue, Job Failed
I tried exporting as csv and mailed to my id. But if I open the csv file the data is coming in single... (6 Replies)
Discussion started by: annamalaikasi
6 Replies
LEARN ABOUT DEBIAN
spreadsheet::writeexcel::chart::pie
Spreadsheet::WriteExcel::Chart::Pie(3pm) User Contributed Perl Documentation Spreadsheet::WriteExcel::Chart::Pie(3pm)NAME
Pie - A writer class for Excel Pie charts.
SYNOPSIS
To create a simple Excel file with a Pie chart using Spreadsheet::WriteExcel:
#!/usr/bin/perl -w
use strict;
use Spreadsheet::WriteExcel;
my $workbook = Spreadsheet::WriteExcel->new( 'chart.xls' );
my $worksheet = $workbook->add_worksheet();
my $chart = $workbook->add_chart( type => 'pie' );
# Configure the chart.
$chart->add_series(
categories => '=Sheet1!$A$2:$A$7',
values => '=Sheet1!$B$2:$B$7',
);
# Add the worksheet data the chart refers to.
my $data = [
[ 'Category', 2, 3, 4, 5, 6, 7 ],
[ 'Value', 1, 4, 5, 2, 1, 5 ],
];
$worksheet->write( 'A1', $data );
__END__
DESCRIPTION
This module implements Pie charts for Spreadsheet::WriteExcel. The chart object is created via the Workbook "add_chart()" method:
my $chart = $workbook->add_chart( type => 'pie' );
Once the object is created it can be configured via the following methods that are common to all chart classes:
$chart->add_series();
$chart->set_title();
These methods are explained in detail in Spreadsheet::WriteExcel::Chart. Class specific methods or settings, if any, are explained below.
Pie Chart Methods
There aren't currently any pie chart specific methods. See the TODO section of Spreadsheet::WriteExcel::Chart.
A Pie chart doesn't have an X or Y axis so the following common chart methods are ignored.
$chart->set_x_axis();
$chart->set_y_axis();
EXAMPLE
Here is a complete example that demonstrates most of the available features when creating a chart.
#!/usr/bin/perl -w
use strict;
use Spreadsheet::WriteExcel;
my $workbook = Spreadsheet::WriteExcel->new( 'chart_pie.xls' );
my $worksheet = $workbook->add_worksheet();
my $bold = $workbook->add_format( bold => 1 );
# Add the worksheet data that the charts will refer to.
my $headings = [ 'Category', 'Values' ];
my $data = [
[ 'Apple', 'Cherry', 'Pecan' ],
[ 60, 30, 10 ],
];
$worksheet->write( 'A1', $headings, $bold );
$worksheet->write( 'A2', $data );
# Create a new chart object. In this case an embedded chart.
my $chart = $workbook->add_chart( type => 'pie', embedded => 1 );
# Configure the series.
$chart->add_series(
name => 'Pie sales data',
categories => '=Sheet1!$A$2:$A$4',
values => '=Sheet1!$B$2:$B$4',
);
# Add a title.
$chart->set_title( name => 'Popular Pie Types' );
# Insert the chart into the worksheet (with an offset).
$worksheet->insert_chart( 'C2', $chart, 25, 10 );
__END__
AUTHOR
John McNamara jmcnamara@cpan.org
COPYRIGHT
Copyright MM-MMX, John McNamara.
All Rights Reserved. This module is free software. It may be used, redistributed and/or modified under the same terms as Perl itself.
perl v5.10.1 2010-02-02 Spreadsheet::WriteExcel::Chart::Pie(3pm)