comp.apps.spreadsheets == cas
Frequently Asked Questions == FAQ
The FAQ list for comp.apps.spreadsheets can be found on the Internet:
<ftp://rtfm.mit.edu/pub/usenet/comp.apps.spreadsheets/faq>
<http://www.faqs.org/faqs/spreadsheets/faq/>
========================================================================
Contents:
1. Disclaimer
2. Spam
3. Can you answer my spreadsheet question?
4. How can I add a FAQ and its answer to the FAQ list?
5. Should I post a spreadsheet utility I just created/found?
6. Where can I learn about spreadsheets?
7. General spreadsheet issues
8. For the masses: Lotus 1-2-3
9. For the masses: Quattro
10. For the masses: Excel
11. Spreadsheet runtimes/compilers
12. Optimizers (Solvers)
13. Errors, Checkers, Auditors
14. Obscure: File formats
15. Obscure: Free spreadsheets, and source code
16. Obscure: Commercial spreadsheets for UNIX
17. Obscure: Legal issues
18. Miscellaneous
99. Credits
========================================================================
1. Disclaimer
Read at your own risk. The current, previous, or original authors
make no claim as to fitness for any purpose or absence of any errors,
and offer no warranty. Do not eat.
========================================================================
2. Spam
you wouldn't believe how much spam I get to this address.
========================================================================
3. Can you answer my spreadsheet question?
Probably not. Please don't mail it to me. There is no reason to assume
I, personally, have ever even USED the spreadsheet you're wondering about.
Read the manuals, and the FAQ, and the materials pointed to by it. If
you can't find an answer there, by all means post to the newsgroup.
If you need help posting, see <http://groups.google.com/> among others.
A FAQ list is intended to reduce traffic on a newsgroup, not eliminate it.
The newsgroup readers can be very helpful. Don't be shy in asking
questions. But do make sure that you:
- show you've put in effort beforehand (including reading the manual
for your software), and aren't just being lazy and abusing the
newsgroup participants
- give enough details -- some people don't even mention what
spreadsheet they're using!
- use a descriptive Subject: header (not just `Excel help' or
`Two Lotus Questions' or `Quattro problem' or `Formula needed'
or, probably worst of all, `Help me!!!!!!1')
- clearly ask your question. your message will be travelling
to thousands of computers around the world, so it's courteous
to spend a few minutes reading it over and making it perfect.
- give an example if you have a complex formula request (sometimes
a small example will say more than a lot of text. if you want a
particular result from 5 numbers, give the numbers and the result
you'd expect. or give 3 sets of 5 numbers and 3 results.)
- don't post a large attachment (these are almost ALWAYS a waste of
space, which is very rude to people whose net access is expensive;
a small example is good; a large attachment, including the example
and an extra 100k of data and file format overhead, is bad.)
These observations and suggestions hold for most newsgroups.
My personal interest is in obscure, technical and/or historical trivia,
like source code, free spreadsheets, and file formats, but not with how
to do things which are documented in the manuals. I assume that future
maintainers will rectify this imbalance.
In the mean time, the whole of section 6 lists pointers to other places
you can look which will probably have what you want.
========================================================================
4. How can I add a FAQ and its answer to the FAQ list?
Mail BOTH of them to me. Then I can add them to the FAQ and it should
help people who have that same question later, as well as everyone who
reads the group, because they won't see it asked and answered so often.
Do not just post the message and hope that I will see it -- I don't
read every message in the group.
I do not work on this FAQ every day, but I will try to get updates
incorporated in a timely manner.
Of course, don't mail me my entire FAQ! I already have a copy! There
are copies available all over the web that I could use if I lost mine!
I pay for my access; don't you?
========================================================================
5. Should I post a spreadsheet utility I just created/found?
Please, no. While it's nice that you want to share, posting files
is not the way to do it. Not everyone will want the file, and for
many people net access is too expensive to waste it this way.
If you have a web page, please put it on the web page, and post an
announcement to the group telling us where it is. Then not only
will people reading the group today have it, but people searching
archives of the group next month will be able to find it, too.
And only people who actually want it will pay for transmitting it.
If you don't have a web page, you may want to use one of the many
free web page services. Or possibly post a `space wanted' message
to the group, asking people who have web pages (e.g., collections
of spreadsheet utilities) if you can send it (once!) to them, and
they will let us know where to find it.
========================================================================
6. Where can I learn about spreadsheets?
More entries are always helpful!
Have any moved? Please let me know.
Here are some places to look on the Internet I've seen suggested:
History of Spreadsheets
http://manuel.lit.tas.edu.au/buss/sssw/history3.htm [error 1999/Feb/14]
http://libwww.stfx.ca/courses/CSCI130-13/lectures/spreadsheets/intro.html
http://dss.cba.uni.edu/dss/sshistory.html
http://www.un.org/Depts/unsd/softproj/papers/nidi_pg.htm
http://www.as.edu.au/www/CompSt/GenHSC1.html [error 1999/Apr/10]
John Walkenbach's "The Spreadsheet Page"
http://www.j-walk.com/ss/
it's more than a page -- it's a large site with information on
many spreadsheets and spreadsheet-related material, including
his own advanced books
IUPUI's FAQs for many spreadsheets
http://www-lib.iupui.edu/toolbox/spreadsheets.shtml [no more FAQs?!]
Microsoft Excel 97 and VBA
http://www.100folhas.pt/software/excel.html [error 1998/Sep/08]
Rick Desrosiers
http://homepages.together.net/~rickd/
Writing Excel Macros, by Steven Roman
http://www.oreilly.com/catalog/exlmacro/noframes.html
spreadsheets in mathematics, statistics, and science education
http://sunsite.univie.ac.at/Spreadsite/
spreadsheets and statistics
http://www.man.deakin.edu.au/rodneyc/
spreadsheets and differential equations
http://www.sci.usq.edu.au/staff/robertsa/home.html
(look for spreadsheet.sea.hqx)
Richard Warr's spreadsheet page
http://www.warr.cc/
Excel (in German)
http://www.vwa.ba-stuttgart.de/~mballweg/Excel/inhalt.htm
[error 1998/Dec/01]
Excel (in German)
http://www.herber.de/ [frames-only! boo hiss!]
http://www.herber.de/main_left.htm
http://www.herber.de/links.htm
Excel (in Russian)
http://www.fido.nnov.ru/win/Excel/FAQ.html
Excel utilities
http://www.fido.nnov.ru/win/Excel/AmountToText.html
The Byg Utilities Lite (including Number to Text)
http://www.bygsoftware.com/bygutils/bu_lite.htm
University of British Columbia Excel Tips
http://www.science.ubc.ca/~geol302/excel/
Frank Isaacs' VBA Pro
http://www.vbapro.com/
Arun Ubale's spreadsheet written in Java
http://sunrise.cs.olemiss.edu/~cmubale/ [error 1998/Sep/08]
http://www.cs.olemiss.edu/techrpt/tr1996.html
Spreadsheet written in Java
http://java.sun.com/applets/jdk/1.1/demo/SpreadSheet/SpreadSheet.java
Christopher B. Browne's spreadsheet history and Linux implementations
http://www.hex.net/~cbbrowne/spreadsheets.html
Linux spreadsheets
http://www.linuxlinks.com/Software/Spreadsheets/
Linux Software (including spreadsheets)
http://members.aa.net/~swear/pedia/science-and-math.html
Excel page with lots of examples; also, finding and removing links
http://www.bmsltd.co.uk/
Joseph Moosman's Excel (including permutations and combinations)
http://www.geocities.com/SiliconValley/7043/
Excel and VBA examples
http://www.mindspring.com/~tflynn/excelvba.html
Alan's Excel pages
http://www.barasch.com/excel/
Chip's Excel pages
http://home.gvi.net/~cpearson/excel.htm
[error 2000/Jan/29]
Laurent Longre's XLLs
http://longre.free.fr/
http://longre.free.fr/english/
NerdWorld Spreadsheet Links
http://www.nerdworld.com/nw547.html
MIT Excel User Group
http://web.mit.edu/xlug/
Excel Companion -- introduction to mathematical modeling
http://faculty.babson.edu/aieta/exclcmpn/
Byte accolades for Improv (an MS-Windows port of the NeXT product)
http://www.byte.com/art/9401/sec6/art1.htm
Ture Magnusson Excel Pages
http://www.turedate.se/excel/
http://www.turedate.se/excel/menu.htm
[error 2000/Jan/29]
Sam L. Savage -- Spreadsheets in analytical modeling
http://www.stanford.edu/~savage/
http://lionhrtpub.com/orms/orms-2-97/savage.html
Use of spreadsheets to analyze political data
http://ps.polisci.wisc.edu/~kritzer/ps551/syllabus.htm
[error 2000/Jan/29]
Tutorial on adding custom functions to Excel;
includes least-squares fitting for data with uncertainty
http://wham.ph.utexas.edu/ModPhy/DataAnalysis/ExcelFunctions/ExcelFunctions.html
[error 2001/Apr/18]
Generalized Linear Models on a spreadsheet
http://www.StatisticalEngineering.com/glm.htm
Inside Microsoft Excel (formerly the Cobb Group, Ziff Davis)
http://www.elementkjournals.com/ime/
Village Software -- commercial spreadsheets for Excel, Lotus, Quattro
http://www.villagesoft.com/
John Lacher -- spreadsheet application development
http://www.lacher.com/
Baarns Publishing
http://www.baarns.com/
http://archive.baarns.com/DevOnly/pages/maindfaq.asp
http://archive.baarns.com/Office97/pages/main97xl.asp
http://archive.baarns.com/Excel/free/excelexp.asp
http://archive.baarns.com/pages/faqgen.asp
PC World spreadsheets
http://www.pcworld.com/hereshow/
http://www.pcworld.com/hereshow/browse.asp?cat=212
http://www.pcworld.com/resource/printable/article/0,aid,15489,00.asp
Spreadsheet Shareware Utility CD
http://www.emsys.com/ssutil.htm
[error 2001/Apr/18]
Excel Solutions Letter (with VBA tips)
http://www.beyondtechnology.com/ [totally frames-dependent! boo hiss! ]
http://www.beyondtechnology.com/tips.htm
OzGrid
Excel (and VBA) training, spreadsheets, add-ins, tips and tricks
http://www.ozgrid.com/
c|net
http://www.help.com/cgi-perl/search.pl?query=spreadsheets
Search Engines
<http://dir.yahoo.com/Computers_and_Internet/Software/Spreadsheets/>
<http://www.dmoz.org/Computers/Software/Spreadsheets/>
<http://directory.google.com/Top/Computers/Software/Spreadsheets/>
Official product web pages:
Lotus
http://www.lotus.com/
[yay! they fixed their no-frames brokenness!]
Lotus information
ftp://ftp.support.lotus.com/pub/desktop/
... Improv/technotes/next/technotes.zip
... Improv/technotes/windows/technotes.zip
... Symphony/technotes/standalone/technotes.zip
... Symphony/technotes/server_edition/technotes.zip
... SmartSuite/technotes/windows/standalone/technotes.zip
... SmartSuite/technotes/windows/server_edition/technotes.zip
... 123/technotes/dos/standalone/technotes.zip
... 123/technotes/dos/server_edition/technotes.zip
... 123/technotes/windows/server_edition/technotes.zip
... 123/technotes/windows/standalone/technotes.zip
Lotus 123 user discussion area
http://www.lotus.com/free123.nsf?opendatabase
http://www.lotus.com/maindisc.nsf/123byDate
Quattro
http://www.corel.ca/products/wordperfect/cqp/index.htm
http://www.corel.ca/products/wordperfect/cqp7/index.htm
http://www.corel.ca/products/wordperfect/cqp8/index.htm
http://www.corel.ca/products/wordperfect/cqp/manual/
http://www.corel.ca/products/wordperfect/cwps8/macros/wptoc.htm
http://www.corel.ca/products/wordperfect/cqp8/support.htm
http://www.corel.ca/support/
Microsoft Excel
http://www.microsoft.com/office/excel/
http://www.microsoft.com/officedev/articles/Opg/toc/pgtoc.htm (VBA guide)
http://www.microsoft.com/office/ork/ (Office Resource Kit)
http://support.microsoft.com/support/excel/content/faq/
Microsoft Knowledge Base
http://support.microsoft.com/support/search/
[back to being accessible without cookies! finally!]
ftp://ftp.microsoft.com/deskapps/excel/kb/
ftp://ftp.microsoft.com/deskapps/excel/kb/index.txt
[not searchable except through index]
Wingz
http://wingz-us.com/
http://wingz.iisckc.com/ [error 2000/Jan/29]
http://www.iisc.co.uk/wingz/
Xess
http://www.ais.com/
http://www.ais.com/faq.html
http://www.ais.com/xess4-help.html
NExS
http://www.nexs.com/
http://www.nexs.com/faq.html
http://www.nexs.com/manuals.html
VistaSource Applixware and Anyware
http://www.vistasource.com/
http://www.vistasource.com/products/anyware/spreadsheets
http://www.vistasource.com/services/support/FAQ
Star Office (includes spreadsheet)
http://www.stardiv.de/
http://www.stardivision.com/
http://www.stardivision.com/body.html
ftp://ftp.gwdg.de/pub/linux/staroffice/
MacroCALC
http://www.freakout.de/#mc
XQuad (Axene Office)
http://www.axene.com/english/xquad.html
Spreadsheet 2000 (formerly Let's Keep It Simple)
http://www.emer.com/s2k/ [error 2001/Apr/18]
http://www.casadyg.com/ [error 2001/Apr/18]
Improv
ftp://ftp.support.lotus.com/pub/desktop/Improv/index.html
Mesa
http://www.plsys.co.uk/products/mesa/
http://www.sundialsystems.com/mesa/
Quantrix
http://www.lighthouse.com/ProductInfo/Quantrix.html [error 1997/Jun/01]
http://www.lighthouse.com/ftp.html [error 1999/Apr/10]
ftp://ftp.lighthouse.com/pub/products/Quantrix/ [error 1999/Apr/10]
ParaSheet
http://www.lighthouse.com/ProductInfo/ParaSheet.html [error 1997/Jun/01]
http://www.lighthouse.com/ftp.html [error 1999/Apr/10]
ftp://ftp.lighthouse.com/pub/products/ParaSheet/ [error 1999/Apr/10]
As Easy As and Alite
http://www.triusinc.com/
GS-Calc
http://www.jps-development.com/gs-calc.htm
Lucid 3-D
http://www.lucidcorp.com/products/l3ddos_text.html [error 2001/Apr/18]
http://www.lucidcorp.com/products/l3dw_text.html [error 2001/Apr/18]
Sum*It (for Mac and Be)
http://www.hekkelman.com/
http://www.hekkelman.com/SumIt.html
Sphygmic Spreadsheet
http://www.sphygmic.com/sssheet.htm
Advance by APS
http://www.lighten.com/compare/improv_index.html [error 2001/Apr/18]
@Risk
http://www.palisade.com/
http://www.palisade.com/html/risk.html
KMT Software; developers of templates, add-ons and developer tools
http://www.kmt.com/
XRT/table widgets
http://www.klg.com/software/xrt/xrttable.html
JClass LiveTable
http://www.klg.com/software/jclass/jclasslivetable.html
xlSTAT (a data analysis toolbox for Excel)
http://www.xlstat.com/
Bob Flanagan's `Microsoft Visual Basic Macros Made Easy' online book
http://www.add-ins.com/vbhelp.htm
[error 2000/Jan/29]
Bob Flanagan's `Home of Great Excel Add-ins'
http://www.add-ins.com/
Interval Solver for Microsoft Excel
http://www.delisoft.fi/ExcelProducts/IntervalSolver/
[error 2001/Apr/18]
OMDI Add-ins for Microsoft Excel
http://www.octavian.com/scieng.html
http://www.octavian.com/mathdesc.html Linear Programming
http://www.octavian.com/omdiimag.html Image Tools
http://www.octavian.com/descunit.html Unit Tools
http://www.octavian.com/descelem.html Element Tools
http://www.octavian.com/descpure.html Pure Component Tools
Analyse-it statistics add-in for Microsoft Excel
http://www.analyse-it.com/
Concept Data
http://www.conceptdata.com/
FarPoint Spread (VBX)
http://www.fpoint.com/
http://www.fpoint.com/products/spread/spread.html
Forms Processing Engine (JavaScript spreadsheet)
http://www.c-sw.com/
Athena's Integer Spreadsheet in Java
http://www.integer.athena.com/
[error 2001/Apr/18]
ExcelGrid for Delphi
http://www.topsoft.com/main/2025/14912663.asp
Enhance23 add-in for Lotus123
http://www.lapsoft.com/
DPS Small Business Solutions -- examples in Excel, 123, MS Works, ...
http://songdavis.hypermart.net
Other:
Mailing list: Excel General
EXCEL-G
for information, send mail with the line
INFO EXCEL-G
to LIST...@PEACH.EASE.LSOFT.COM
to subscribe to the list, send mail with the line
SUB EXCEL-G us...@domain.name Firstname Lastname
to LIST...@PEACH.EASE.LSOFT.COM
Mailing list: Excel Developer
EXCEL-L
for information, send mail with the line
INFO EXCEL-L
to LIST...@PEACH.EASE.LSOFT.COM
to subscribe to the list, send mail with the line
SUB EXCEL-L us...@domain.name Firstname Lastname
to LIST...@PEACH.EASE.LSOFT.COM
Newsgroups: Quattro
access via NNTP at news://cnews.corel.ca
note that this is not a legitimate RFC 1036bis name, so
it may not work with your particular newsreader
corel.support.wordperfect8suite.quattropro
Newsgroups: Microsoft Excel
access via NNTP at news://msnews.microsoft.com
note that many of these are not legitimate RFC 1036bis names, so
they may not work with your particular newsreader
microsoft.public.excel.123quattro
Support for converting 1-2-3 or Quattro sheets
into Microsoft Excel sheets.
microsoft.public.excel.charting
Support for building charts with Microsoft Excel
microsoft.public.excel.crashesGPFs
Post here for help with crashes or General Protection Faults.
microsoft.public.excel.datamap
Support for the Data Map feature
microsoft.public.excel.interopoledde
Assistance with OLE - DDE and other cross application issues.
microsoft.public.excel.links
Support for using links in Excel.
microsoft.public.excel.macintosh
Support for Excel issues on the Macintosh Operating System Platform
microsoft.public.excel.misc
Post general questions or questions that do not fit
one of the other categores.
microsoft.public.excel.printing
Support for printing spreadsheets with Microsoft Excel
microsoft.public.excel.programming
Programming Excel using VBA or XLM.
microsoft.public.excel.queryDAO
Support of the Microsoft Query Tool and
using Data Access Objects (DAO) in Excel.
microsoft.public.excel.setup
Setup and Installing Microsoft Excel.
microsoft.public.excel.templates
Assistance with the Village templates and other XLT files.
microsoft.public.excel.worksheetfunctions
Support for Worksheet functions only like =Lookup(), or =Linest().
microsoft.public.de.excel
Deutsche Newsgroup fuer EXCEL
========================================================================
7. General spreadsheet issues
7.0 Introductions
http://www.drake.edu/artsci/econ/study/spread.html
[error 2000/Jan/29]
7.1 Why does my spreadsheet say 0.1+0.1+0.1+0.1+0.1-0.5 isn't 0?
if any computer package uses binary floating point numbers (and
the vast majority do), then it can not represent the value 1/10
exactly (just like it can't represent the value 1/3 exactly).
so, in each 0.1 there's a little roundoff error, and when you get
enough of those errors together, you can sometimes see them.
this is why you cannot reliably use simple equality tests on a
binary-arithmetic computer (including in a spreadsheet) unless it
is designed to represent such quantities exactly (for instance,
by using integer hundredths, or using Binary Coded Decimal form).
so, instead of testing for equality like
=IF(Credits=Debits)
you have to do it something like
=IF(ABS(Credits-Debits)<0.0000001)
because the first method MAY FAIL when you encounter this type
of roundoff error. the numbers will _look_ the same on the
screen, but they won't _be_ the same, when examined to the full
precision the computer has used.
frustratingly, Microsoft Excel _does_ store values as integer
hundredths to make the files smaller, but it does _not_ use these
precise values in its calculations, as that perfect accuracy
would make it slower!
if you're using dollars and cents, testing if the values agree
to within 1 cent (0.01) usually makes more sense than 0.0000001 .
even though later versions of Microsoft Excel do have an option
`use values as displayed', it does not wholly work around this
problem, as the calculations are still done internally in binary.
however, the final test against `0' _could_ work, if placed in
separate cells: the displayed value for 0.1+0.1+0.1+0.1+0.1-0.5
(when forced to show at most 2 decimal places) is exactly 0.
but if you were testing `0.1+0.1-0.1' against `0.1', all bets
are off -- it may work, or it may not, depending on how careful
the different parts of the spreadsheet are in being consistent
with rounding to impossible-to-store-exactly values like `0.1'.
7.2 How can I round to the nearest multiple of 3? or the nearest nickel?
if you have a ROUND() function, simply divide by your grouping,
round your value, and multiply by your grouping.
e.g., to round to the nearest use
3 ROUND(value/3)*3
0.05 ROUND(value/0.05)*0.05
0.05 ROUND(value*20)/20 [equivalent]
these results will still be subject to computer accuracy -- if you
round 0.15 to the nearest 0.3, you might get 0 or you might get 0.3
or you might get 0.29999999999.
7.3 How can I save-as HTML, or otherwise view foreign spreadsheets?
7.3.1 built-in save-as HTML
some spreadsheets have this built-in now. contact your vendor
to see if there is a patch or add-on which will work for you.
7.3.2 dbQuickPage (HTML)
dbQuickPage supports the following [...]
Lotus 1-2-3 wk1, wk3, wk4
Excel 3.0, 4.0, 5.0, 8.0
http://www.hallogram.com/dbquickpage/
7.3.3 XTML (Excel to HTML)
http://members.aol.com/ksayward/XTML/
7.3.4 perl source code
(source code!)
(doesn't require MS-Windows!)
(free!)
7.3.4.1 Herbert, a free platform independent MS Excel to HTML convertress
http://user.cs.tu-berlin.de/~schwartz/perl/
7.3.4.2 Spreadsheet::ParseExcel
http://www.perl.com/CPAN-local//modules/by-module/Spreadsheet/
7.3.5 Quick View
http://www.inso.com/qvp/index.htm
[error 2001/Apr/18]
add-in for Netscape Navigator
views many spreadsheet file types
7.3.6 Corel Quattro Viewer Plugin
http://www.corel.com/products/wordperfect/cwps8/plugin.htm
7.3.7 Drag and View
http://www.canyonsw.com/dnv.htm
7.3.8 ReadWk
ftp://ftp.simtel.net/pub/simtelnet/msdos/spredsht/readw308.zip
WKS,WK1
7.3.9 QView
ftp://ftp.simtel.net/pub/simtelnet/msdos/spredsht/qtview11.zip
WKQ,WQ1,WQ2,WB1,WKS,WK1,WRK,WR1
7.3.10 xl2html
http://www710.gsfc.nasa.gov/704/dgd/xl2html.xls [hard to reach]
http://www.gwdg.de/samba/winapps/xl2html.zip [unofficial mirror]
7.4 How many columns or rows does my spreadsheet allow?
look in your manual! why do so many people post this question
world-wide?
7.4.1 Can I get more columns or rows than that?
no -- did you think the manual was joking?
a. perhaps there is another spreadsheet package which has
enough columns or rows for your needs.
b. if you cannot switch packages, try to rotate the data
(since most spreadsheets allow many more rows than columns).
c. if none of these work, split the data over multiple sheets,
if your package has this capability.
7.5 Spreadsheets in Science and Engineering
7.5.1 Science and Engineering
book/CD:
Spreadsheets in Science and Engineering ed. W. G. Filby
ISBN 3-540-61253-X
7.5.2 Chemistry
book:
Excel for Chemists: A Comprehensive Guide, by Dr. E. Joseph Billo
(Wiley-VCH, 1997, 480 pp, $49.95)
7.5.3 MoreVision Layout
7.6 How do I deal with dates and times in my spreadsheet?
this depends on your spreadsheet.
the most common method is to ignore dates entirely -- just
represent the dates as numbers, and use them like any other numbers.
in particular, every number is treated as the number of whole
days starting with some particular date long ago (it is called
the epoch, and usually has a value of 1). so a value of 2 would
be the day after the epoch, 3.5 would be noon (12 hours=0.5 days)
2 days after the epoch, and 12.25 would be 6 am (6 hours=0.25 days)
11 days after the epoch.
(Unix keeps its time in a similar way, except it only uses integers;
it counts the number of seconds since the start of 1970. this is
why many Unix systems are in danger of severe clock problems in 2038 --
the signed 32-bit counter will overflow.)
when you format the numbers as dates or times, a lot of things just
magically work. for instance, you can add 7 to a date, and it will
always be a week later, even if it wrapped around a month or year or
century -- it's the formatting that does all the hard work of deciding
what date (and time) a given number actually represents.
there are two big problems:
1. there was no February 29 in 1900:
by the 4/100/400 rule, 1900 was not a leap year (and 2000 was).
but for backward compatibility with an error in an early
spreadsheet that used the epoch of 1900/Jan/01, many spreadsheets
treat 1900 as if it was (and claim that `60' should be treated as
the nonexistent 1900/Feb/29). this means any date calculations
that use dates before 1900/Mar/01 are suspect.
2. the epoch can change:
perhaps to avoid that problem, the Macintosh system has used
an epoch of 1904/Jan/01. but since the dates are stored only
as numbers, you can suddenly find your dates shifting by about
4 years when opening spreadsheets on different computers
(notably, Microsoft Excel allows you to switch between the
`1900 date system' and the `1904 date system' interpretations
on the same computer).
there are 3 small problems:
1. the difference between two dates can't be formatted as a date:
if you want to show the difference between two dates (e.g., age)
you simply subtract the two numbers -- but do NOT format them
as dates (since a difference of 3 days might show up as the
confusing 1900/Jan/04). always treat (and format) the difference
as a number of days, possibly dividing by
7 to show the number of weeks;
365[.2422...] to show an approximate number of years;
30[.416...] to show an approximate number of months.
2. times over 24 hours may be hard to format:
if you add 18 hours (0.75) and 12 hours (0.5), you may not get
the 30 hours (1.25) you expect, but 1 day with 6 hours (0.25)
left over. you may need to format the result as a number, in days,
or multiply by 24 to show the time in hours. many newer versions
have a special `overflow' format to treat a number as time only,
without using the integer part as a day count.
3. two digits for the year were never enough (past 1900, anyway):
if you enter data with 2-digit years, shame on you. but if you
insist, your software may be trying to outsmart you -- some packages
treat any two-digit year from 00-29 as 2000-2029. if this happens,
and you format the date with a 2-digit year (shame on you!), you may
never notice this switch until the day you accidentally discover that
your `average age' calculation is just a little too low, because of a
few negative ages you used!
========================================================================
8. For the masses: Lotus 1-2-3
8.0 1-2-3 history
[
I've been mailed a as-I-remember-it history, but I'd love to have
an official one to point to here
]
8.1 What file extensions do different versions use?
WKS : release 1A
WK1 : release 2
FMT : format of release 2 (wysiwyg)
WK3 : release 3
FM3 : format of release 3 (wysiwyg)
WK4 : release 4 and 5 (includes format (wysiwyg))
123 : release 97
8.2 How can I recover a corrupted file?
see http://www.geocities.com/CapitolHill/5186/ [removed? 1998/Jan/23]
8.3 Opening Quattro Files
see ftp://ftp.support.lotus.com/pub/desktop/123/win3x/utils/qpwtrans.exe
========================================================================
9. For the masses: Quattro
9.0 Quattro history
1-2-3 was the dominant spreadsheet on PCs for a long, long time.
`quattro' is similar to the Latin and Spanish words for `4'. Get it?
According to the 1994 Computer Bowl, the code name for Quattro was
`Buddha', since it was intended to assume the Lotus position.
9.1 Quattro file extensions
Felix Miata wrote:
> All versions of Quattro Pro I have used can read and write the
> Lotus WKS and WK1 file formats. A file saved as both a WK1 file
> and a WQ1 file results in the WQ1 file being the larger. Maximum
> cell contents length in the Lotus formats is 240 characters. For
> the QPro formats I have used (WQ1 & WQ2) the limit is 255
> characters. The special WQ! compressed format available to QPro
> DOS users reduces the contents length to a 245 character maximum.
> So, something is obviously different about the formats.
> The original Quattro used the WKQ format. Quattro Pro introduced
> the WQ1 format. The WQ2 format was introduced to offer multipage
> spreadsheet "notebooks" with version 5.0. The Windoze version
> readable by the DOS program is WB1.
========================================================================
10. For the masses: Excel
10.0 Excel history
http://www.microsoft.com/msexcel/productinfo/macintosh/xlhistry.htm
[error 1999/Apr/10]
http://support.microsoft.com/support/kb/articles/q66/9/13.asp
ftp://ftp.microsoft.com/deskapps/excel/kb/q66/9/13.txt
http://info.lut.ac.uk/departments/ps/Exceldir/ExcelHist.html
10.1 Why would anyone want to convert Excel 4 macros to VBA?
- there are some compatibility problems with later versions
- so they are easier to understand
- so they are easier to modify
- so you can learn VBA
10.1.1 Is there a tool which will convert Excel 4 macros to VBA?
not that anyone knows of -- if you find one, tell us all
10.2 How can I do a Save-As or Exit without prompting the user?
VBA:
You can suppress the messages with:
Application.DisplayAlerts = False
Don't forget to turn them back on when you are finished with:
Application.DisplayAlerts = True
10.3 How do I put multiline text string in a message box?
VBA:
MsgBox _
"This will print on line one" & Chr(13) & _
"this will print on line two"
10.4 Why do I get "File format no longer supported"?
If some other application overwrites the OLE DLLs, you will get
this error at odd times.
One fix posted by Scot Foss follows:
Move these files to a different directory and then Uninstall
Excel. If you reinstall Excel every thing should work. After
reading through the related articles in dejanews one person
said that Microsoft Video was the culprit that overwrote the
DLLs. The only thing that I can think of that I installed
in the last month was Microsoft Encarta, I haven't
experimented to see if it was Encarta that messed up the
DLLs, so I can't be sure.
Here's the list of the files:
I deleted Excel and backed up and deleted the following
files, and reinstalled Excel from the MS-Office disks.
OLE2.DLL
OLE2.REG
OLE2CONV.DLL
OLE2DISP.DLL
OLE2NLS.DLL
OLE2PROX.DLL
VBA.DLL
VBAEN.DLL
VBAEN.OLB
STDOLE.TLB
STORAGE.DLL
TYPELIB.DLL
10.5 What's this about the 15 digit numbers that return 0.64 or 1.28?
according to Microsoft, the problem numbers are:
> 140737488355328 = 2^47
> 281474976710656 = 2^48
> 562949953421312 = 2^49
> multiples of ten also cause problems, such as 1.40737488355328
see http://support.microsoft.com/support/kb/articles/q128/6/50.asp
see ftp://ftp.microsoft.com/deskapps/excel/kb/q128/6/50.txt
see http://support.microsoft.com/support/kb/articles/q128/3/32.asp
see ftp://ftp.microsoft.com/deskapps/excel/kb/q128/3/32.txt
10.6 How can I read Excel files without Excel?
10.6.0 from a program
see the section on `Excel formats' to see if there is a library
that will work on your system.
also see the section on `Spreadsheet runtimes/compilers'
10.6.1 using MS-Windows (Excel Viewer)
see http://support.microsoft.com/support/kb/articles/q141/2/24.asp
see ftp://ftp.microsoft.com/deskapps/excel/kb/q141/2/24.txt
10.6.2 not using MS-Windows
see the section on converting to HTML to see if that will satisfy.
if not, you will probably have to buy a spreadsheet package for your
system that can read Excel files. or see if you can get the Excel
user to use a non-proprietary format.
10.7 What's this about an Excel virus?
see http://support.microsoft.com/support/kb/articles/q154/1/31.asp
see ftp://ftp.microsoft.com/deskapps/excel/kb/q154/1/31.txt
see http://support.microsoft.com/support/kb/articles/q176/8/07.asp
see ftp://ftp.microsoft.com/deskapps/excel/kb/q176/8/07.txt
Even with Macro Virus Protection (Excel 97 and later) enabled,
code can run upon opening files, without your approval:
see http://www.counterpane.com/crypto-gram-9908.html#News
see http://officeupdate.microsoft.com/Articles/mdac_typ.htm
10.8 When I start up Excel, it tries to open a lot of files; some of
them are non-Excel files (sometimes my AUTOEXEC.BAT and CONFIG.SYS,
sometimes all my Windows files) that it tries to open as Excel
workbooks. What happened?
it is opening all the files in the Alternative Startup File Location.
delete the setting via:
Excel 4:
load the AltStart addin and clear the entry
Later:
Tools|Options|General|Alternate Startup File Location
with some later versions, you can start Excel with a flag
excel /AUTOMATION
to temporarily disable this action (which makes it easier to
get to the menus to turn it off)
10.9 Any number I type in gets divided by a power of 10. Why?
Excel has an option `Fixed Decimal Places', which divides all
constants entered directly in the cell by a power of 10 (e.g.,
entering 622 would change to 6.22).
change the setting to `0' via:
Tools|Options|Edit|Fixed Decimal Places
10.10 Excel complains about TIMER.DRV on startup. What can I do?
see http://support.microsoft.com/support/kb/articles/q109/7/78.asp
see ftp://ftp.microsoft.com/deskapps/excel/kb/q109/7/78.txt
10.11 I get odd (square?) characters where I expect commas (thousands)
or slashes (dates). What happened?
check your International settings in Control Panel. when these get
corrupted, Excel will still use them, with ugly results.
10.12 How can I add 14:00 to 14:00 and get the cell to say 28:00
instead of 04:00?
> For Excel 5, 7, 8
> format the cell: [h]:mm
>
> Excel 97 makes it easier now, by including the format among the pull
> down choices for a time format.
10.13 Why is =-1^2 positive and =0-1^2 negative?
nonstandard operator precedence -- the `unary minus' has a high
precedence, as normal, but the `exponentiation operator' has a
higher one, which is NOT normal.
see http://support.microsoft.com/support/kb/articles/q132/6/86.asp
see ftp://ftp.microsoft.com/deskapps/excel/kb/q132/6/86.txt
Excel treats -1^2 as (-1)^2, while most languages would as -(1^2).
(you can ALWAYS use parentheses to force either interpretation.)
note that Excel formulas and VBA formulas disagree on the order.
I had thought it might have been there for Lotus 1-2-3
compatibility; however, the Microsoft Excel Knowledge Base mentions
this incompatibility explicitly:
see http://support.microsoft.com/support/kb/articles/q61/9/41.asp
see ftp://ftp.microsoft.com/deskapps/excel/kb/q61/9/41.txt
Results of -1^2 (or -1**2)
All known versions of Excel:
1 Excel =FORMULA
Bill Clark tested it and reported:
-1 Excel 5 VBA
-1 DOS Quattro Pro V5
-1 Lotus 123r5w
-1 Qbasic
-1 GNU G77 Fortran (OS/2)
1 dBase 4
1 Base32 (OS/2 Dbase clone)
John Whittington reported:
-1 SAS
-1 Minitab
-1 MS BASIC
1 MS Word for Windows Table Formula
The comp.lang.perl.misc FAQ mentions:
-1 Perl
Anthony Berglas pointed out an odd problem with precedence between
floating-point division (/) and integer division (\) in VBA:
> ? 60 \ 5 * 2
> 6
> ? 60 / 5 * 2
> 24
10.14 How can I save a chart as a GIF file?
see http://support.microsoft.com/support/kb/articles/q168/5/61.asp
see ftp://ftp.microsoft.com/deskapps/excel/kb/q168/5/61.txt
see http://support.microsoft.com/support/kb/articles/q166/3/38.asp
see ftp://ftp.microsoft.com/deskapps/excel/kb/q166/3/38.txt
see http://support.microsoft.com/support/kb/articles/q163/1/03.asp
see ftp://ftp.microsoft.com/deskapps/excel/kb/q163/1/03.txt
10.15 Excel says I have links -- but I can't find them. Where are they?
see http://support.microsoft.com/support/kb/articles/q188/4/49.asp
see ftp://ftp.microsoft.com/deskapps/excel/kb/q188/4/49.txt
see http://www2.kalanit.co.il/nachum/ [no more Excel content?]
1. formulas
find the filename the link is to (Edit|Links)
select all sheets
search for that filename
2. names
search through the list of names
3. buttons
[ is there a good way to search these? ]
4. charts
[ is there a good way to search these? ]
10.15.1 How can I get a list of names defined in a spreadsheet
in a form I can search for, print, compare with others, etc.?
it's built-in => Insert|Name|Paste|Paste List
see http://support.microsoft.com/support/kb/articles/q50/2/61.asp
see ftp://ftp.microsoft.com/deskapps/excel/kb/q50/2/61.txt
10.16 How can I recover a corrupted file?
see http://www.conceptdata.com/excel/
see http://www.excelrecovery.com/
see http://www.officerecovery.com/
see http://www.mjm.co.uk/excel-recovery.html
10.17 Why doesn't my spreadsheet recalculate?
Microsoft Excel has been notorious for not recalculating
automatically, the last few releases. this is scary.
see http://support.microsoft.com/support/kb/articles/q174/8/68.asp
see ftp://ftp.microsoft.com/deskapps/excel/kb/q174/8/68.txt
to force a recalc (perhaps after every formula or data change!),
type Ctrl+Alt+F9, or `Application.SendKeys "^%{F9}"' in VBA.
a search-and-replace of `=' with `=' will also force recalculation
(which might be required after a Copy and Paste).
10.17.1 Why do my User-Defined Functions return #VALUE! occasionally?
there is a problem with Excel 95 user-defined functions, in which they
are sometimes replaced by #VALUE when sheet operations take place. for
example, inserting or moving a sheet from one spreadsheet to another
will often result in all user-defined functions being replaced by a
#VALUE. forcing the sheet to recalculate will not remove the #VALUE.
re-entering the formula (and clicking the little green check box)
resolves the problem; also, global replacement of `=' with `=' (which
is no functional change) throughout the sheet will simulate this and
restore the correct values.
10.18 How do I use array formulas?
10.18.0 Matrix operations in Excel (Macro-Investment Analysis)
http://www.stanford.edu/~wfsharpe/mia/mat/mia_mat4.htm
10.18.1 How do I sum up or count column A when corresponding cells
in column B match some condition?
use an array formula; in MS-Windows, you enter an array formula
with Ctrl+Shift+Enter. on a Mac, use Command+Shift+Enter (I think).
Excel will add {braces} to the display to remind you it's an array.
SUMIF() and COUNTIF() functions in recent versions of Excel can
be simpler, but reduce portability, and can't handle the more
complex cases.
examples: data is in rows 10:50
- count entries in column B that are >10
=SUM(IF(B10:B50>10,1,0))
- sum entries in column B that are >10
=SUM(IF(B10:B50>10,B10:B50,0))
- average entries in column B that are >10
=SUM(IF(B10:B50>10,B10:B50,0)) / SUM(IF(B10:B50>10,1,0))
- sum column A when column B is >10
=SUM(IF(B10:B50>10,1,0)*A10:A50)
- sum column A * column B when column C is "blue"
=SUM(IF(C10:C50="blue",1,0)*A10:A50*B10:B50)
- sum column A when column B is >10 and column C is "blue"
=SUM(IF(B10:B50>10,1,0)*IF(C10:C50="blue",1,0)*A10:A50)
[don't use AND(), see below]
- sum column A when column B is >10 or column C is "blue"
=SUM(SIGN(IF(B10:B50>10,1,0)+IF(C10:C50="blue",1,0))*A10:A50)
[don't use OR(), see below]
10.18.2 How come my SUM(IF()) array formula doesn't work?
Excel (even v8, Excel 97) does not handle AND() or OR() in array
formulas; other versions have also had problems with MIN() and
MAX() in array formulas.
see http://support.microsoft.com/support/kb/articles/q77/6/76.asp
see ftp://ftp.microsoft.com/deskapps/excel/kb/q77/6/76.txt
but I recommend avoiding their booleans-are-numbers type coercion,
by changing
IF(and(a=b,c=d),x,y)
to
IF( if(a=b,1,0) * if(c=d,1,0) <>0 ,x,y)
IF(or(a=b,c=d),x,y)
to
IF( if(a=b,1,0) + if(c=d,1,0) <>0 ,x,y)
it makes the formulas longer, but should make your intent clearer to
everyone who didn't use this to get AND/OR in BASIC 20 years ago.
for AND(), you can just use multiplication (since only 1*1=1 and
0*anything=0) and SUM() the results. but for OR(), this won't
work (since 1+1=2). however, you can use the SIGN() function
when SUM()ing; e.g.,
SUM(SIGN(IF(A1:A10=6,1,0)+IF(B1:B10=22)))
will result in the count of rows where A1:A10 is 6 and B1:B10 is 22,
since SIGN(0) is 0 while SIGN(1) and SIGN(2) are both 1.
10.19 What is the correct, registered MIME Content-Type for Excel files?
application/vnd.ms-excel
see http://www.isi.edu/in-notes/iana/assignments/media-types/application/vnd.ms-excel
so don't use any of these:
application/ms-excel
application/msexcel
application/excel
application/x-ms-excel
application/x-msexcel
application/x-excel
application/octet-stream
10.20 How do I protect myself in Excel against "unary" minus type bugs
in my formulas?
You can use the AutoCorrect feature to prevent yourself from
incorporating hard-to-spot logic errors into your spreadsheets:
is replace with
,- ,(0-
(- (0-
=- =0- <-- this one is IMPORTANT, since = and - are adjacent
on most keyboards, and it's easy to type `=-' when
you only meant to type `='
10.21 Why does Excel claim I have an invalid `SYLK' file?
Because the Excel programmers are sloppy. A valid SYLK file begins
with `ID;' or `ID' alone on a line.
Sometimes Excel incorrectly says `SYLK: file format is not valid.'.
When you try to open a text file that begins with, say, `ID' and a tab,
it could not possibly be a valid SYLK file, but Excel claims it thought
it was, to no avail.
Simply rename `ID' to `Ident' or `Id' or something similar.
========================================================================
11. Spreadsheet runtimes/compilers
11.0 References
11.1 Baler and Visual Baler
http://the-ciba.com/vbaler/index.html
11.2 xlsexe
Compuserve: 71031,1123 <71031...@compuserve.com>
America Online: RobertL469
Centerline Software
3351 Turner Plaza #108
Abilene, TX 79606
ftp://ftp.zdnet.com/pccomp/1001/xlsexe.zip
11.3 Formula One (Java)
11.4 SmartTable
http://www.vni.com/products/wpd/SmartTable/
11.99 Can't find them
3-2-1 Blastoff, by Looking Glass / Frontline Systems
King Jaguar, by Sheng Laboratories Inc.
========================================================================
12. Optimizers (Solvers)
12.0 Discussion
these products take as inputs:
- starting data
- relations
- desired outcome
and attempt to vary the data to achieve the outcome exactly. they
do this by making small changes to the data, observing whether the
outcome is closer or further, and either making a larger change or
making the change in the opposite direction.
http://www.maths.mu.oz.au/~worms/digest/software/spreadsheets.html
[error 2001/Apr/18]
http://www.maths.mu.oz.au/~worms/digest/software/excel97.html
[error 2001/Apr/18]
A Linear Programming Example
http://www.cs.adfa.oz.au/~mariamf/ms3e/spreads.htm
[error 2001/Apr/18]
12.1 included
many spreadsheets include such a rudimentary facility
12.2 Frontline Systems
12.3 New Light Industries
These are general-purpose optimizers that work with Excel, and which
can be used to find the set of inputs that maximize or minimize a
profit, cost, or other value calculated in an Excel spreadsheet.
http://www.iea.com/~nli/
http://www.iea.com/~nli/products/genetic_algorithms/main.htm
12.4 What'sBest [sic]
12.5 Mathematical Programming Services
12.6 MoreVision Layout
http://www.morevision.com/
http://www.morevision.com/side.htm
========================================================================
13. Errors, Checkers, Auditors
13.0 Discussion
Raymond Panko's Spreadsheet Research
http://panko.cba.hawaii.edu/ssr/
Jocelyn Paine
Model Master (spreadsheet front-end; fewer errors; easier to read+maintain)
http://www.ifs.org.uk/~popx/
New Scientist articles
http://www.newscientist.com/ns/970816/nspreadsheet.html
http://www.newscientist.com/ns/980912/nsoftware.html
Frontline Systems Hints for Building Readable, Manageable Models
http://www.frontsys.com/readable.htm
Spreadsheet Style - including readability tips, auditing help
http://www.spreadsheetstyle.com/
13.1 Minimal
There should be 2 trivial checks any spreadsheet should be able to
make on its formulas:
1. no formula refers to an empty cell
- except as part of a larger SUM() perhaps
2. no nonempty cell is unreferenced
- except those that are intended as final results or displays
13.2 The Excel Auditor
http://www.bygsoftware.com/auditor/auditor.htm
13.3 Spreadsheet Detective
http://www.uq.net.au/detective/
13.4 Professional's Guide to Robust Spreadsheets
http://www.manning.com/Richardson/
ISBN 0-13262320-X
13.5 The Campgridge Spreadsheet Analyst
from 1986 (Version 2.0)
The Cambridge Software Collaborative
identifies a variety of suspicious references
one web site claims it is now owned by Intex; one claims Symantec.
13.99 Can't find them
Spreadsheet Auditor, by Consumers Software (or Consumer Software?)
Cellmate
========================================================================
14. Obscure: File formats
14.0 General References
Wotsit: Database and Spreadsheet
http://www.wotsit.org/search.asp?s=database
File Formats for Popular PC Software
by Jeff Walden
ISBN 0-471-83671-0
John Wiley & Sons
Copyright 1986
Spreadsheet file formats for:
Lotus 1-2-3 1, 1A, 2.0
Symphony 1, 1.1
Ability
DIF (Data Interchange Format)
Multiplan (SYLK) 1.2
IBM Plans+ 1.0
Supercalc 3 Release 2
SDI (Super Data Interchange) 2.0
Visicalc 177Y2
More File Formats for Popular PC Software
by Jeff Walden
ISBN 0-471-85077-2
John Wiley & Sons
Copyright 1987
Spreadsheet file formats for:
Framework II
Supercalc 4
The File Formats Handbook
by Guenter Born
ISBN 1-85032-117-5
International Thomson Publishing, London
1274 pages
Copyright 1995 (I think)
Spreadsheet file formats for:
Lotus 1-2-3 WKS/WK1 file format
Lotus 1-2-3 WK3 file format
Lotus 1-2-3 FRM file format
Lotus 1-2-3 PIC format
Lotus Symphony format
Data Interchange Format (DIF)
Super Data Interchange format (SDI)
Standard Interface format (SIF)
Symbolic Link Format (SYLK)
Excel binary interchange format (BIFF)
http://ourworld.compuserve.com/homepages/Guenter_Born/
http://ourworld.compuserve.com/homepages/Guenter_Born/file1.htm
Dr. Dobb's Essential Books on File Formats
6 books on one CD
Born: The File Formats Handbook
Walden: More File Formats for Popular PC Software
Kay: Graphics File Formats
Kientzie: Internet File Formats
Swan: Inside Windows File Formats
Taylor: File Formats
ord...@mfi.com
http://www.ddj.com/cdrom/
Graphics File Formats Encyclopedia
by James D. Murray, William vanRyper
ISBN 1-56592-161-5 (2nd edition)
O'Reilly and Associates
book and CD
Spreadsheet file formats for:
Lotus 1-2-3 WKS/WK1
Lotus 1-2-3 PIC
Data Interchange Format (DIF)
Symbolic Link Format (SYLK)
http://www.ora.com/catalog/gffcd/
http://www.ora.com/catalog/gffcd/noframes.html
14.1 Tab-delimited format
Stores: Values
this is generally an excellent format, except that it can be
corrupted easily by any text manipulator (including editors
and e-mail systems) that remove or add tabs, and it uses
non-printable characters that may not have an equivalent in
non-ASCII character sets. also, it tends to have long lines,
which may cause further problems.
each column is separated by ASCII tabs (9). each row is separated
by local end-of-line, most commonly ASCII LF (10), ASCII CR (13),
or ASCII CRLF pair (13,10).
e.g.,
First[TAB]Second[TAB]3[TAB]Fourth, and Second-Last[TAB]Fifth
14.2 CSV (Comma-Separated Values) format
Stores: Values
this is generally not a good format, as it has two special cases
(commas and quotation marks) that are often misimplemented. it
can work very well for purely numeric data, which use neither of
these two characters -- unless your radix separator is the comma,
as is still common in some parts of Europe. in these cases,
software often uses a semicolon (;) instead of the comma (,) to
separate fields.
each column is separated by commas. each row is separated by local
end-of-line, most commonly ASCII LF (10), ASCII CR (13), or ASCII CRLF
pair (13,10).
if a comma is needed, the entire field will be surrounded by
quotation marks (though there is software that gets even this
wrong -- the Windows NT 3.51 Event Log export function is one
example). some packages enclose any string value (and even numeric
values) in quotation marks. to represent a quotation mark within
a field, double it (don't use `\"') and quote the whole field.
e.g., (examples marked with [*] are unusual)
First,Second,3,"Fourth, and Second-Last",Fifth
"First","Second",3,"Fourth, and Second-Last","Fifth"
[*] "even","numeric","fields","are","in","quotes","1","2","3"
"this field has a ""quoted"" word","yes, and this one has a comma"
14.3 DIF (Data Interchange Format)
note that this is not Directory Interchange Format, documented
at http://gcmd.gsfc.nasa.gov/difguide/difman.html .
Stores: Values
this is generally a good format, as it clearly distinguishes
between numeric and string data.
http://www.wotsit.org/download.asp?f=dif
(ignore the `O' vs. `0' mixup throughout)
http://hcl.chass.ncsu.edu/garson/pa573/convert.txt [error 1999/Feb/14]
http://www.wco.com/~3d5d1wsw/Apple.III.info/DIF.txt
[error 1998/Jan/24]
Byte Magazine
Nov 1981
p174-206
DIF: A Format for Data Exchange between Application Programs
Candace E Kalish & Malinda F Mayer
DIF Clearinghouse
POB 527
Cambridge MA 02139
contains file format description
contains BASIC program to write DIF
contains BASIC program to read DIF
contains Apple Pascal program to read DIF
The DIF File
For Users of VisiCalc & Other Software
Donald H Beil
Reston Publishing Co (part of Prentice-Hall)
Reston VA
1983
ISBN 0-8359-1305-8 (paper)
250pp
This file format requires more explanation than just a simple example.
_File Formats..._ says:
And special thanks to Lotus Development Corporation for the foresight
and kindness to place the information about their file format in the
public domain.
[ is this WKS only or DIF only or both or what? ]
14.4 Lotus 1-2-3 and Symphony formats
these are capable formats, but their complexity makes them unusable
for all but the most dedicated user.
http://ftp.support.lotus.com/ftp/pub/product_information/wsff.zip
http://www.wotsit.org/download.asp?f=wks
http://www.wotsit.org/download.asp?f=wsff
14.4.1 WKS format
Stores: Values, Equations, Simple formatting
File format descriptions can be found via the following anonymous
ftp sites
ftp://ftp.simtel.net/pub/simtelnet/msdos/spredsht/wksffmt.zip
http://simtel.coast.net/Coast/msdos/lotus123.html [defunct]
FILE: wksffmt.zip SIZE: 22,575 DATE: 900626
DESCRIPTION:
Description of Lotus .WKS & .WK1 file formats
Lotus File Formats for 1-2-3, Symphony, and Jazz
by the people at Lotus Development Corporation
ISBN 0-201-16824-3
Lotus Books
Addison-Wesley
Published 1986
compares VisiCalc files to 1-2-3 files; details file formats
for 1-2-3 1A, 2; Symphony 1.0, 1.1; PIC; Jazz; includes
Turbo Pascal program to convert text into WKS.
Turbo Pascal program obviously not typeset directly from
working source, and independently has various out-of-bounds
errors; table on p127 claims hex 0=dec 1; p141 claims Jazz
had 8192 (and 8191) columns and 256 (and 255) rows.
14.4.2 WK1 format
Stores: Values, Equations, Formatting, Named Regions [?]
Also See WKS format
14.4.3 WK3 format
Stores: Values, Equations, Formatting, Named Regions [?]
Also See WKS format
14.5 Quattro and Quattro Pro formats
this is a capable format, but its complexity makes it unusable
for all but the most dedicated user.
Stores: Values, Equations, Formatting, Named Regions [?]
[is this the same as any Lotus format?]
http://www.corel.ca/partners_developers/ds/co32sdk/docs/qp7/qpf1copy.htm
14.6 SYLK format
this is a capable single-sheet format, and would be best for any
non-trivial single-sheet spreadsheet interface needs, except for the
historical difficulty in locating electronic documentation.
[
if ANYONE has a pointer to the official Microsoft specification of
this format on the web, PLEASE tell me; only unofficial locations
(of what appear to be official specifications) are known
]
14.6.1 documented SYLK
Stores: Values, Equations, Formatting, Named Regions
http://www.wotsit.org/download.asp?f=sylk
http://charon.silesia.linux.org.pl/formaty/bazy_danych/sylk_file_format.txt
used by Excel 4 and earlier, and all other SYLK software
used by Excel 7 and later (as far as I can tell, except where
using features not covered by the original specification)
documented in Multiplan manuals (and Walden's and later books)
documented in `sylksum.doc' (plain text), which I can no longer
find on Microsoft's ftp site or web site, but is temporarily at
http://www.worldgate.ca/~rschulz/misc/sylksum.doc .
[ do they still have a BBS I could check? ]
simple awk code to parse a SYLK file is at
http://www.worldgate.ca/~rschulz/misc/parseslk.awk .
14.6.2 Excel 5 SYLK
Stores: Values, Equations, Formatting, Named Regions, Charts [?]
used by Excel 5 (only?)
Born's book documents some (all?) extensions, but I am still looking
for documention for them from Microsoft -- what good is having two
families of file formats (Excel XLS and Excel SYLK) that pretty much
only Excel can read?!
in particular, the erroneous `M'atrix modifier has caused me
problems with software expecting to read a documented SYLK file.
Excel 7 (95) and later seem to be MUCH better at following the
documented format (in that they no longer add spurious `M'atrix
modifiers like Excel 5 did).
14.6.3 non-English Excel SYLK
French Excel 97 saves SYLK files with () around relative
references instead of []. I do not know if this problem
is present in any other version of Excel.
14.7 Excel formats
these are capable formats, but their extreme complexity and
volatility makes them unusable for practically everyone except
Microsoft and licensees.
http://www.wotsit.org/download.asp?f=xls
http://www.wotsit.org/download.asp?f=biff
includes code to write (not read) Excel files
http://www.wotsit.org/wdatabas/msoffice.zip [error 1999-Jun-12]
how to get MS Office file format information for free
http://www.cubic.org/source/archive/fileform/misc/excel.txt
from Microsoft; includes code; for Excel 4
http://www.scitek.demon.co.uk/html/body_excel_toolkit.html
[error 1999-Jul-02]
http://www.scitek.demon.co.uk/html/body_download_page.html
[error 1999-Jul-02]
http://www.scitek.co.uk/ [error 1999-Jul-02]
libraries for MS Windows, DOS, and Unix (!) to read/write Excel files
http://www.gotovbs.com/products.htm
search for OpenExchange (and OpenExchange DLL)
14.7.1 Excel 1.0 format
14.7.2 Excel 1.5 format
14.7.3 Excel 2/2.1 format
14.7.4 Excel 3 format
14.7.5 Excel 4 format
Stores: Values, Equations, Formatting, Named Regions, Charts,
Multiple Worksheets, ...
Try to find the Excel 4 SDK (out of print) from Microsoft Press.
14.7.6 Excel 5/7 format
Stores: Values, Equations, Formatting, Named Regions, Charts,
Multiple Worksheets, ...
Buy the Excel 5 SDK from Microsoft -- your bookstore can order
it from Microsoft Press (1-800-MS-PRESS).
Microsoft Excel Developer's Kit
Version 5
Microsoft Press
ISBN 1-55615-632-4
Rumor has it that, because they are OLE compound documents,
there will be NO official Microsoft libraries to manipulate
them, except those on the MS-Windows platform.
The 'LAOLA' package is an OLE wrapper library for non-windows platforms.
http://user.cs.tu-berlin.de/~schwartz/pmh/laola.html
(this non-API method is not guaranteed to work for
future versions of OLE -- it only attempts to unravel
the current binary file formats.)
xls2csv is another project to read xls files:
http://www.ice.ru/~vitus/catdoc/xls2csv.html
biffview is another project to read xls files:
http://www.az.com/~drysdam/projects.html [error 2001/Apr/18]
http://freshmeat.net/redir/homepage/900554100/
14.7.7 Excel 8 format
Microsoft Excel 97 Developer's Kit
Microsoft Press
ISBN 1-57231-498-2
14.8 Applixware/Anyware Spreadsheet format (.as)
http://www.vistasource.com/products/axware/fileformats/SSFileFormat.html
========================================================================
15. Obscure: Free spreadsheets, and source code
15.1 sc
Spreadsheet Calculator
SimTel: sc621.zip
http://simtel.coast.net/Coast/msdos/spredsht.html [defunct]
http://simtel.coast.net/cgi-bin/coast/dwn?msdos/spredsht/sc621_3.zip
ftp://ftp.coast.net/Coast/msdos/spredsht/sc621.zip [defunct]
http://www.simtel.net/pub/simtelnet/gnu/gnuish/sc621.zip
15.1.1 ss
interface additions to sc 6.2.1
by: Art Mulder (art.m...@ualberta.ca)
latest version: 1.3.3
http://www.ualberta.ca/~amulder/ss/ [error 1999/Apr/10]
15.1.2 xspread
xspread was based on sc.
The program xspread is a public domain spreadsheet which runs under X
Windows or ascii terminals. Xspread uses the X Window system if available
or curses and term[cap/info] for ascii displays. A manual is included.
They are available from the usual X ftp places, and locally at
ftp://ftp.cs.uwm.edu/pub/soft-eng/ [error 2001/Apr/18]
15.1.2.1 Dismal (Dis Mode Ain't Lotus)
http://www.psychology.nottingham.ac.uk/staff/ritter/papers/dismal/dismal.html
... a copylefted spreadsheet that runs in GNU Emacs (and Xemacs).
In addition to most spreadsheet things, it includes: optional
logging of user actions, a full programming language and access
to all internal functions, and some existing functions for HCI
design work. A manual is included.
15.1.3 slsc
http://space.mit.edu/~davis/
ftp://space.mit.edu/pub/davis/slsc/
additions to sc, including s-lang
15.2 oleo
GNU spreadsheet
(handles SYLK)
ftp://ftp.gnu.org/pub/gnu/oleo/
ftp://prep.ai.mit.edu/pub/gnu/oleo/
ftp://rumple.soas.ac.uk/pub/oleo-1.6.D-patches.tgz
http://willow.canberra.edu.au/~rpj/oleotk.html
If you want to participate in the alpha/beta cycle, you
should subscribe to the bug-oleo list by sending an e-mail
to bug-oleo...@gnu.org with the word "subscribe" in the
body of the message.
15.3 teapot
Teapot (Table Editor And Planner, Or: Teapot!)
http://www.moria.de/~michael/teapot/teapot-en.html
15.4 Borland MicroCalc
Borland's Turbo Pascal and Turbo C and Turbo C++ compiler packages
have often included source code to a small spreadsheet.
15.5 Herb Schildt's sparse array code
Herb Schildt's book _C: The Complete Reference_ has a section on sparse
arrays. His main example of where you'd use them is in a spreadsheet.
ISBN 0-07-881263-1 (McGraw-Hill 1987)
15.6 siag (Scheme In A Grid)
http://siag.nu/ [error 2001/Apr/18]
15.6.1 ksiag (K Desktop Environment SIAG)
http://www2.jorsm.com/~mofset/
[error 2001/Apr/18]
ftp://ftp.kde.org/pub/kde/unstable/apps/office/ksiag-3.0.6-beta1.tar.gz
15.7 kspread (K Desktop Environment spreadsheet)
http://koffice.kde.org/kspread/
http://koffice.kde.org/faq/#KSPREAD
http://lists.kde.org/?l=kde-koffice
15.8 ABS
abs is a free basic spreadsheet with a graphical user interface.
It runs on Linux 2.0 and AIX 4.2.1 .
http://www.ping.be/bertin/abs.shtml
15.9 1996 CalPoly VT100 Spreadsheet Project
http://cobra.csc.calpoly.edu/~dbutler/projects/spreadsheet/
15.10 gnumeric
http://www.gnome.org/gnumeric/
includes source for reading Excel files
15.11 abacus
http://www-cad.eecs.berkeley.edu/HomePages/aml/abacus/abacus.html
15.12 moodss (modular object-oriented dynamic spreadsheet)
15.13 qtmx
http://www.softarc.com/~msharkey/
[error 2001/Apr/18]
15.14 topological sorting
http://www.cee.hw.ac.uk/~alison/ds98/node66.html
http://www.informant.com/libs/mod/mod9811rs.zip
[error 2001/Apr/18]
15.15 xxl
http://www.esinsa.unice.fr/xxl.html
http://www.linuxjournal.com/issue60/3186.html
15.16 tknum (tk#)
http://www.netby.dk/Oest/Europa-Alle/vermeer/
========================================================================
16. Obscure: Commercial spreadsheets for UNIX
16.0 Section criteria
I will happily include a pointer to any Internet resource (in
Section 6) for any spreadsheet manufacturer.
In this section, I will also put email addresses and a few
telephone numbers (toll-free wherever you are, and
internationally-accessible for the rest of the world) for ones
which run natively on Unix.
16.1 WingZ
16.2 Xess
in...@ais.com, sup...@ais.com
+1 919-942-7801
1-800-334-5510
16.3 NeXS
nexs...@xess.com
+1 919-387-0076
16.4 MacroCALC
16.5 XQuad
16.6 Mesa
in...@plsys.co.uk
+44 1494 432422
========================================================================
17. Obscure: Legal issues
17.1 Patents
17.1.1 Natural Order Recalc (US Patent 4,398,249)
see http://www.lpf.org/Patents/against-software-patents.html
[error 1998/Jan/24 -- no longer the League for Programming Freedom]
see ftp://prep.ai.mit.edu/pub/lpf/techrev.patent [error 1999/Apr/10]
see http://lpf.ai.mit.edu/Patents/against-software-patents.html
see http://www.gnu.org/bulletins/bull12.html#TOC9
see http://www.hotwired.com/wired/archive/2.07/patents.html
see http://www.ba-iplaw.inter.net/info/federal/patent/95-1350.txt
[error 2001/Apr/18]
see http://www.gcwf.com/articles/ipusum96.htm#patent
[error 1998/Sep/02]
see http://pennie.com/abs496.htm
[error 2001/Apr/18]
see http://www.base.com/software-patents/disputes.html
17.2 Interface Copyright
17.2.1 Lotus vs. Borland and Paperback Software
see http://www.borland.com/ProgServ/US/legal/lawsuits.html
[error 1997/Jun/01]
see http://www.borland.com/programs/developer/legal/legal.html
[error 2001/Apr/18]
see http://www.borland.com/programs/developer/legal/lotus_am.html
[error 2001/Apr/18]
see http://www.borland.com/programs/developer/legal/lotusbrf.html
[error 2001/Apr/18]
see ftp://prep.ai.mit.edu/pub/lpf/look-and-feel.text [error 1999/Apr/10]
see http://www.computerlaw.com/lookfeel.html
========================================================================
18. Miscellaneous
========================================================================
99. Credits
I expect most of the information in this FAQ to be supplied by people
other than myself -- it's just going to work better that way. The
newsgroup readers have a LOT more spreadsheet experience than I ever
will (unless I multiply myself by a few thousand, which is not legal
with today's tax laws).
These people have contributed to the well-being of the FAQ:
jwalk [at] cts.com (John Walkenbach)
RussTiller [at] aol.com
lyn.jolliffe [at] bbsrc.ac.uk
negandhi [at] vex.net (Neil Negandhi)
cingram [at] gtri.gatech.edu (Chris Ingram)
arthur [at] ais.com
BaarnsDon [at] msn.com (Donald Baarns)
nachum [at] netvision.net.il (Nachum Ginat)
dtsmith [at] mindspring.com (Dale Smith)
neuwirth [at] smc.univie.ac.at (Erich Neuwirth)
hans [at] usit.net (Ed Hansberry)
tkm [at] xess.com (Tom Miller)
helberg [at] maddog.fammed.wisc.edu (Clay Helberg)
booter [at] fea.com (Elaine Richards)
richard [at] warr.cc (Richard Warr)
100322.1465 [at] compuserve.com (Born Guenter)
vlod [at] iisc.co.uk (vlod kalicun)
steve [at] emer.com (Steve Wilson)
fahmy [at] xlstat.com (Dr. Thierry Fahmy)
steelera [at] pilot.msu.edu (Ray M. Steele)
pjraval [at] ix.netcom.com (P. Raval)
dsherman [at] iwaynet.net (David Sherman)
Dave_Weintraub [at] jhuapl.edu
michael [at] cantor.informatik.rwth-aachen.de (Michael Haardt)
aroberts [at] usq.edu.au (Tony Roberts)
eonsol [at] cix.compulink.co.uk (Jeff Hall)
softbase [at] mercury.interpath.com (Scott McMahan)
nlunger [at] epix.net (Norman Lunger)
phillip [at] pm.cse.rmit.edu.au (Phillip Musumeci)
andy.wiggins [at] bygsoftware.com (Andy Wiggins)
the_mrs [at] geocities.com
abarr [at] onramp.net (Allen F. Barr)
scotfos [at] rosemount.com (Scot Foss)
joseph.billo [at] bc.edu (Dr. E. Joseph Billo)
gharmer [at] vitgcrp1.telecom.com.au (Greg Harmer)
G.Dunn [at] Queens-Belfast.ac.uk (George Dunn)
ma [at] informatik.uni-kiel.de (Martin Ameskamp)
peter.allan [at] aeat.co.uk
Rsclient [at] aol.com (Peter Smith)
T.Harden [at] tu-bs.de (Torsten Harden)
eschner [at] w-4.de (Hanfred Eschner)
goinssouth [at] worldnet.att.net (Steven Goins)
gswebstr [at] budget.com.au (Graham Webster)
panko [at] hawaii.edu (Ray Panko)
arun [at] fsc.fujitsu.com (Arun Ubale)
dcromley [at] wyoming.com (Dave Cromley)
apd230 [at] voicenet.com (Maciej Gorny)
october [at] direct.ca (Kris Plasun)
wclark [at] worldnet.att.net (Bill Clark)
berglas [at] it.uq.edu.au (Anthony Berglas)
johnw [at] MAG-NET.CO.UK (John Whittington)
stimpy [at] maas.net (Jon Dalberg)
anonymous (Brian Ewins)
hidronet [at] mail.telepac.pt (R. Carvalho)
jrlatour [at] SPAMARAMA.perigee.net (John)
n.youngman [at] videonetworks.com (Neil Youngman)
paul-lemay [at] home.com
breiter [at] mathematik.Uni-Osnabrueck.DE (Bernhard Reiter)
jkinlan [at] kmt.com (Jim Kinlan)
mbetz [at] bellatlantic.net (Mark Betz)
cbbrowne [at] news.brownes.org (Christopher B. Browne)
warren [at] borg.com (Warren A. Hall)
softw.guide [at] writeme.com (Ricardo Carvalho)
reckteac [at] ibex.ca (Achim Rectenwald)
greg [at] gtravis.ucs.indiana.edu (Gregory R. Travis)
bod [at] compusol.com.au (Brendan O'Dea)
ats [at] acm.org (Alan Shutko)
aswerle [at] aol.com (ASWERLE)
hadleysw [at] ornl.gov (Stanton W. Hadley)
Frank.Ritter [at] nottingham.ac.uk
munged (Eric Brunelle)
walterg [at] flash.net (Walter George)
Gordon.Filby [at] pef.fzk.de
munged (Adam Schneider)
mixa [at] nbd.kis.ru (Michael Zemljanukha)
eero.hyvonen [at] delisoft.fi (Eero Hyv o: nen)
m.strandgard [at] nre.vic.gov.au (Martin Strandgard)
Brian.Farrelly [at] nho.hydro.com
Par-Golfer [at] msn.com (Alan P. Moynihan)
stevem [at] iea.com (Steve McGrew)
tehall [at] lucent.com (Troy Hall)
john-d [at] dircon.co.uk (John Douglas)
emil [at] conceptdata.com (Emil Sildos)
104074.3422 [at] compuserve.com (David Hager)
bernie [at] octavian.com (Bernie Wieser)
mmartin [at] azschbdassn.org (Mike Martin)
jbailey [at] nisa.net (Jeff Bailey)
S_Kelly [at] bigpond.com.au (Shauna Kelly)
schwartz [at] cs.tu-berlin.de (Martin Schwartz)
munged (Bob Flanagan)
tonypay [at] dircon.co.uk (Tony Pay)
munged (Marc Bjorklund)
cpearson [at] gvi.net (Chip Pearson)
gary.barlow [at] bbc.co.uk
LEEPF [at] tst.tracor.com (Phil Lee)
longre [at] wanadoo.fr (Laurent Longre)
svass [at] provide.net (Steven)
dcm [at] c-sw.com (David)
yalmog [at] inter.net.il
Larry_Warner [at] geoworks.com (Larry Warner)
mq [at] scitek.co.uk
popx [at] ermine.ox.ac.uk (Jocelyn Paine)
visser.b [at] pandora.be (Ber Visser)
jplerat [at] isospice.com (Jean-Philippe LERAT)
ahaag [at] horiba.com (Haag, Achim)
gmckitt [at] erols.com
rudyf [at] mail.one.net (Rudy Forsberg)
frank [at] dolphintechnology.com (Frank Isaacs)
mrmazda [at] gate.net (Felix Miata)
jh [at] analyse-it.com (James Huntington)
munged (Kevin Romero)
vitus [at] wagner.rinet.ru (Victor Wagner)
pgc [at] tigerdrive.com (Paul Crissy)
harald.staff [at] nrk.no (Harald Staff)
myotis [at] cix.co.uk (Graham M Smith)
rodney [at] beyondtechnology.com (Rodney Powell)
sue.baker [at] morevision.com (Sue Baker)
support [at] lapsoft.com
flip [at] mrflip.com (Philip Flip Kromer)
timdavis [at] bellsouth.net (Tim Davis)
harke [at] cs.ualberta.ca (Tom Harke)
pae [at] dim.com (Phil Earnhardt)
scottcleave [at] csi.com (Scott Cleave)
DMcRitchie [at] msn.com (David McRitchie)
dhawley [at] geo.net.au (David Hawley)
Thanks.
========================================================================
thus endeth the cas FAQ.