excel spreadsheets
Simple Spreadsheet 0.8
Simple Spreadsheet is a webbased spreadsheet program written in Javascript, HTML, CSS and PHP. more>>
Simple Spreadsheet features formulas, charts, numeric formats, keyboard navigation, etc. Javascript is used for the default data format and for the macros and formulas.
CleanSheets 1.4b
CleanSheets is a spreadsheet application that is both extensible and platform-independent. more>>
It features a formula language that closely resembles that of Microsoft Excel, and extensions for aiding end-user programmers in developing correct spreadsheets.
The application is written in Java, and relies on ANTLR for generating the formula compiler and the JFC/Swing JTable component for spreadsheet visualization.
Spreadsheet::Read 0.17
Spreadsheet::Read enables reading the data from a spreadsheet. more>>
Spreadsheet::Read tries to transparantly read *any* spreadsheet and return its content in a universal manner independent of the parsing module that does the actual spreadsheet scanning.
For OpenOffice this module uses Spreadsheet::ReadSXC
For Excel this module uses Spreadsheet::ParseExcel
For CSV this module uses Text::CSV_XS
For SquirrelCalc there is a very simplistic built-in parser
Spreadsheet::Perl 0.07
Spreadsheet::Perl is a pure Perl implementation of a spreadsheet engine. more>>
SYNOPSIS
use Spreadsheet::Perl;
use Spreadsheet::Perl::Arithmetic ;
my $ss = tie my %ss, "Spreadsheet::Perl"
$ss->SetNames("TEST_RANGE" => A5:B8) ;
$ss{TEST_RANGE} = 7 ;
DefineSpreadsheetFunction(AddOne, &AddOne) ;
$ss{A3} = PerlFormula($ss->AddOne("A5") + $ss{A5}) ;
print "A3 formula => " . $ss->GetFormulaText(A3) . "n" ;
print "A3 = $ss{A3}n" ;
$ss{ABC1:ABD5} = 10 ;
$ss{A4} = PerlFormula($ss->Sum("A5:B8", "ABC1:ABD5")) ;
print "A4 = $ss{A4}n" ;
...
Main features:
- set and get values from cells or ranges
- handle cell private data
- has fetch/store callback
- has cell attributes access
- has cell/range fillers (auto-fill functionality)
- set formulas (pure perl and common format)
- compute the dependencies between cells
- formulas can fetch data from multiple spreadsheets and the dependencies still work
- checks for circular dependencies
- debugging triggers
- has a simple architecture for expansion
- has a simple architecture for debugging (and some flags are already implemented)
- can read its data from a file
- supports cell naming
- cell and range locking
- input validators
- cell formats (pod, HTML, ...)
- can define spreadsheet functions from the scripts using it or via a new module of your own
- Recalculate() / AUTOCALC
- value caching to speed up formulas and volatile cells
- cell address offsetting functions
- Automatic formula offsetting
- Relative and fixed cell addresses
- slice access
- Perl scalar mapping to a cell
- some debugging tool (dump, dump table, dump to HTML, formula stack trace, ...)
Spreadsheet::ParseExcel 0.32
Spreadsheet::ParseExcel is a Perl module to get information from an Excel file. more>>
This module allows you to get information from Excel file.
This module can handle files of Excel95, 97 and 2000. (and now supports Excel4)
The module will work on the majority of Windows, UNIX and Macintosh platforms.
Spreadsheet::WriteExcel 2.18
Spreadsheet::WriteExcel is a Perl module which can be used to create native Excel binary files. more>>
Formatted text and numbers can be written to multiple worksheets in a workbook. Formulas and functions are also supported. It is 100% Perl and doesnt require any Windows libraries or a copy of Excel.
It will also work on the majority of Unix and Macintosh platforms. Generated files are compatible with Excel 97, 2000, 2002, and 2003, and with OpenOffice and Gnumeric. An older version also supports Excel 5/95.
Spreadsheet::WriteExcelXML 0.10
Spreadsheet::WriteExcelXML is a Perl module that can create an Excel file in XML format. more>>
SYNOPSIS
To write a string, a formatted string, a number and a formula to the first worksheet in an Excel XML spreadsheet called perl.xls:
use Spreadsheet::WriteExcelXML;
# Create a new Excel workbook
my $workbook = Spreadsheet::WriteExcelXML->new("perl.xls");
# Add a worksheet
$worksheet = $workbook->add_worksheet();
# Add and define a format
$format = $workbook->add_format(); # Add a format
$format->set_bold();
$format->set_color(red);
$format->set_align(center);
# Write a formatted and unformatted string, row and column notation.
$col = $row = 0;
$worksheet->write($row, $col, "Hi Excel!", $format);
$worksheet->write(1, $col, "Hi Excel!");
# Write a number and a formula using A1 notation
$worksheet->write(A3, 1.2345);
$worksheet->write(A4, =SIN(PI()/4));
The Spreadsheet::WriteExcelXML module can be used to create an Excel file in XML format. The Excel XML format is supported in Excel 2002 and 2003.
Multiple worksheets can be added to a workbook and formatting can be applied to cells. Text, numbers, and formulas can be written to the cells. The module supports strings up to 32,767 characters and the strings can be in UTF8 format.
Spreadsheet::WriteExcelXML uses the same interface as Spreadsheet::WriteExcel.
This module cannot, as yet, be used to write to an existing Excel XML file.
Eprayer Beta 8.1
Eprayer is a prayer request script that is easy to install and customize. more>>
Main features:
- Easy to customize
- Sends to multiple recipients
- Sends reply email to requester
- Valid XHTML and CSS
- Records information to a MySQL database as well as a flatfile for excel exporting
- Requires confirmation before sending
- Checks for errors
- Displays random requests on prayer request page
- Ability to set banned email addresses and banned words
- Released under GPL
- Free support via message boards
Spreadsheet Calculator (SCalc) for UNIX 1.0
SCalc is a simple spread sheet program. The user interface applies the UNIX curses library for control of a terminal screen in text mode. more>>
SCalc is a simple spread sheet program. The user interface applies the
UNIX curses library for control of a terminal screen in text mode.
This program was developed using the GNU C++ compiler and related tools.
Limitations in SCalc
-- The screen does not scroll. The entire spread sheet is the size of
the terminal screen with five columns, A to E, and nine rows 1 to 9.
-- Numbers are double precision floating point and are displayed in
scientific format or in floating point format.
-- Column widths will are fixed at 14 spaces. Text that exceeds the column
width is clipped in the cell view. Numerical data in scientific
format should always fit this space.
-- The user cannot copy from cells to other cells, insert or delete lines
or columns, of change cell widths.
Some features of SCalc
-- Built in mathematical functions abs, cos, ln, exp, ...
-- Features for saving and loading spread sheets to and from disk
-- Capability to clear spread sheets
-- Features for automatically or manually re-calculate cell values
Requirements: UNIX w/ gnu compiler
Whats new in this version: New release
<<lessYoxel SW 1.16 Beta
Yoxel SW provides an agile product management solution. more>>
Yoxel SW is an agile product management solution allowing you to maintain a continuous feedback loop with your customers while collaboratively planning and implementing incremental releases.
WHY YOXEL SW?
To know what your customers expect, to collaboratively create relevant products, to deliver functional incremental releases on time.
- Maintain a continuous feedback loop with your customers while managing their feedback and a flow of new ideas.
- Effectively collaborate to determine which features to include into the next product release.
- Optimally allocate resources and accurately predict required project work.
- Simplify monitoring of the implementation and testing phases to always stay on schedule.
Main features:
- an agile product management solution for software companies/teams:
- Request Tracking System allows your R&D, Product Marketing, Program Management organizations to keep track of outstanding bugs, development requests, product requirements and allows your development team to stay focused.
- RTS is also a helpdesk enabling online customer support to allow direct customer feedback about your products and priorities of customer requests.
- Release Planning/Tracking System extends the RTS service into project management space. This service automates most of the planning, prioritization and resource allocation tasks that many software development teams do manually these days. It also provides you with a very convenient collaboration and release tracking environment.
- Adaptive vs. Predictive: RPS is flexible enough to allow your development teams to choose between waterfall/predictive and agile/adaptive methods of development. It is possible to implement SCRUM methodology by doing one month incremental releases in RPS.
- eXtra Reporting extends the RTS service by allowing you to create customized reports and spreadsheets using information stored in the request database. You can make your internal meetings or meetings with your customers more productive and professional by using these reports.
- Knowledge Base System allows your organization to effectively answer internal and external questions and accumulate product and support knowledge.
XML::Excel 0.02
XML::Excel is a Perl extension converting Excel files to XML. more>>
SYNOPSIS
use XML::Excel;
$excel_obj = XML::Excel->new();
$excel_obj = XML::Excel->new(%attr);
$status = $excel_obj->parse_doc(file_name);
$status = $excel_obj->parse_doc(file_name, %attr);
$excel_obj->declare_xml(%attr);
$excel_obj->declare_doctype(%attr);
$excel_obj->print_xml(file_name, %attr);
XML::Excel is a new module which is going to be upgraded very often as my time permits. For the time being it uses Spreadsheet::ParseExcel module object default values to parse the (*.xls) document and then creates a perl data structure with xml tags names and data. At this point it does not allow for a write as you parse interface but is the first upgrade for the next release. I will also allow more access to the data structures and more documentation.
I will also put in more support for XML, since currently it only allows a simple XML structure. Currently you can modify the tag structure to allow for attributes. No DTD support is currently available, but will be implemented in a soon coming release. As the module will provide both: object and event interfaces, it will be used upon individual needs, system resources, and required performance. Ofcourse the DOM implementation takes up more resources and in some instances timing, its the easiest to use.
Java2Excel 1.3.1
Java2Excel is a library that allows the generation of simple excel files using objects of type java.util.Collection. more>>
The current verison of Java2Excel contains a lot of limitations. You can only write the collection in excel files using an xml file as a descriptor of what properties you want in the excel file. In the current state, there is not much error checking.
Example
The following is an example of an xml file used to configure the output to excel.
Please, note that this is a preliminary version and this file may not be compatible with future versions
< ?xml version="1.0" encoding="ISO-8859-1"?>
< !DOCTYPE java2excel PUBLIC
"-//epere4/DTD Java2Excel mapping file//EN"
"http://java2excel.sourceforge.net/dtd/java2excel-mapping.dtd">
< java2excel>
< header>
nothing for now
< /header>
< body>
< properties>
< property name="text">
< description>
This is a text property.
< /description>
< /property>
< property name="integerNumber" />
< property name="date" />
< property name="calendar" />
< property name="boolValue" />
< property name="internal.integerNumber" />
< /properties>
< /body>
< /java2excel>
The name attributes are ognl expressions that are applied to each element in the collection.
For example, integerNumber will be traduced to something like elementInCollection.getIntegerNumber() (with elementInCollection being the name of the variable for each element in the collection, of course). A more complex expresion like internal.integerNumber is equivalent to elementInCollection.getInternal().getIntegerNumber() (watch for NullPointerExceptions, here; there will be some protection for this in future releases)
The following is the code used in ar.com.epere4.java2excel.excelWritter.ExcelWritterTest .
The getMockCollection(5) method, not shown here, will just generate a java.util.Collection with 5 elements that will have all the properties requested by the XML file previously shown.
Parser parser = new Parser();
Java2ExcelDtd java2ExcelDtd = parser.parse(this.getClass()
.getResourceAsStream("/ar/com/epere4/java2excel/excelWritter/ExcelWritterTest.xml"));
ExcelWritter excelWritter = new ExcelWritter();
excelWritter.addReport(getMockCollection(5), java2ExcelDtd);
excelWritter.saveTo(new File("anExcel.xls"));
Enhancements:
- The "Too many different cell formats" error message in Excel was fixed.
- An id was added for properties.
- If not specified, it will continue to be the expression, as before.
- The setIncludeExtraLevel method was added to the BodyDtd interface.
- Maven 2.0 is now used.
- Maven 1.0 support should be considered deprecated.
- It will be maintained only for code dependencies, but the site will be generated using Maven 2.0 from now on.
XLSperl 0.4
XLSperl module allows you to use Perl one-liners with Microsoft Excel files. more>>
SYNOPSYS
XLSperl [options] -e ... file1.xls file2.xls ... fileX.xls
cat file.txt | XLSperl [options] -e ...
Perl "one-liners" have a great many uses for quick data processing tasks, often replacing the UNIX tools grep, sed, and awk. For example, a simple "grep" function can be written as:
perl -lne /pattern/ and print file.txt
which improves on the standard grep function by allowing the extended features of Perl regular expressions to be used.
However, this form of processing is only suitable for data that can be read (or needs to be written) in plain text format. XLSperl lets you use the same commands to process and create Microsoft Excel files, e.g. the following command will "grep" an Excel document:
XLSperl -lne /pattern/ and print file.xls
Usage:
Basic usage of XLSperl is as follows:
XLSperl [options] -e perl_code file1.xls file2.xls ... fileX.xls
Additionally Microsoft Excel files can be piped in to XLSperl
cat file.xls | XLSperl [options] -e perl_code
MillScript-Excel 0.1
MillScript-Excel project is a Java library for reading and writing Excel spreadsheets. more>>
php_writeexcel 0.3.0
php_writeexcel is a port of John McNamaras excellent Spreadsheet::WriteExcel Perl package to PHP. more>>
Ive included six example PHP scripts which are also taken out of the
Spreadsheet::WriteExcel package and ported to PHP:
- example-simple.php
- example-merge2.php
- example-stocks.php
- example-textwrap.php
- example-demo.php
- example-bigfile.php
All you have to do is to tar xzvf the package to a directory accessible via a web server. Then fetch any of the example scripts with your favourite web browser and Excel should come into place and show you a sheet.
Basically all features of Spreadsheet::WriteExcel are supported and thanks to a lot of people (see CHANGELOG) who contributed code and bug fixes, most things seem to work. However, please remember that its still in beta stage, so there are probably some bugs left.
Spreadsheet::WriteExcel uses the Parse::RecDescent package for formula support. Andreas Brodowski has imported and changed the PEAR::Spreadsheet Parser.php file, so formulas are supported since version 0.2.2.
Spreadsheet::WriteExcel uses the OLE::Storage_Lite package for supporting Excel files bigger than approx. 7 MB. I have ported this package already and called it php_ole. But I really dont know how reliable it is, so use it with care!
Enhancements:
- PHP5 compatibility has been added.
- Several bugs have been fixed.