Microsoft Excel is a
proprietaryProprietary software is computer software licensed under exclusive legal right of the copyright holder. The licensee is given the right to use the software under certain conditions, while restricted from other uses, such as modification, further distribution, or reverse engineering.Complementary...
commercialCommercial software, or less commonly, payware, is computer software that is produced for sale or that serves commercial purposes.Commercial software is most often proprietary software, but free software packages may also be commercial software....
spreadsheetA spreadsheet is a computer application that simulates a paper accounting worksheet. It displays multiple cells usually in a two-dimensional matrix or grid consisting of rows and columns. Each cell contains alphanumeric text, numeric values or formulas...
application written and distributed by
MicrosoftMicrosoft Corporation is an American public multinational corporation headquartered in Redmond, Washington, USA that develops, manufactures, licenses, and supports a wide range of products and services predominantly related to computing through its various product divisions...
for
Microsoft WindowsMicrosoft Windows is a series of operating systems produced by Microsoft.Microsoft introduced an operating environment named Windows on November 20, 1985 as an add-on to MS-DOS in response to the growing interest in graphical user interfaces . Microsoft Windows came to dominate the world's personal...
and
Mac OS XMac OS X is a series of Unix-based operating systems and graphical user interfaces developed, marketed, and sold by Apple Inc. Since 2002, has been included with all new Macintosh computer systems...
. It features calculation, graphing tools,
pivot tableIn data processing, a pivot table is a data summarization tool found in data visualization programs such as spreadsheets or business intelligence software. Among other functions, pivot-table tools can automatically sort, count, total or give the average of the data stored in one table or spreadsheet...
s, and a macro programming language called
Visual Basic for ApplicationsVisual Basic for Applications is an implementation of Microsoft's event-driven programming language Visual Basic 6 and its associated integrated development environment , which are built into most Microsoft Office applications...
. It has been a very widely applied spreadsheet for these platforms, especially since version 5 in 1993, and it has almost completely replaced
Lotus 1-2-3Lotus 1-2-3 is a spreadsheet program from Lotus Software . It was the IBM PC's first "killer application"; its huge popularity in the mid-1980s contributed significantly to the success of the IBM PC in the corporate environment.-Beginnings:...
as the industry standard for spreadsheets. Excel forms part of
Microsoft OfficeMicrosoft Office is a non-free commercial office suite of inter-related desktop applications, servers and services for the Microsoft Windows and Mac OS X operating systems, introduced by Microsoft in August 1, 1989. Initially a marketing term for a bundled set of applications, the first version of...
. The current versions are 2010 for
Microsoft WindowsMicrosoft Windows is a series of operating systems produced by Microsoft.Microsoft introduced an operating environment named Windows on November 20, 1985 as an add-on to MS-DOS in response to the growing interest in graphical user interfaces . Microsoft Windows came to dominate the world's personal...
and 2011 for
Mac OS XMac OS X is a series of Unix-based operating systems and graphical user interfaces developed, marketed, and sold by Apple Inc. Since 2002, has been included with all new Macintosh computer systems...
.
Basic operation
Microsoft Excel has the basic features of all spreadsheets, using a grid of
cells arranged in numbered
rows and letter-named
columns to organize data manipulations like arithmetic operations. It has a battery of supplied functions to answer statistical, engineering and financial needs. In addition, it can display data as line graphs, histograms and charts, and with a very limited three-dimensional graphical display. It allows sectioning of data to view its dependencies on various factors from different perspectives (using
pivot tableIn data processing, a pivot table is a data summarization tool found in data visualization programs such as spreadsheets or business intelligence software. Among other functions, pivot-table tools can automatically sort, count, total or give the average of the data stored in one table or spreadsheet...
s and the
scenario manager). And it has a programming aspect,
Visual Basic for Applications, allowing the user to employ a wide variety of numerical methods, for example, for solving differential equations of mathematical physics, and then reporting the results back to the spreadsheet. Finally, it has a variety of interactive features allowing user interfaces that can completely hide the spreadsheet from the user, so the spreadsheet presents itself as a so-called
application, or
decision support system (DSS), via a custom-designed user interface, for example, a stock analyzer, or in general, as a design tool that asks the user questions and provides answers and reports. In a more elaborate realization, an Excel application can automatically poll external databases and measuring instruments using an update schedule, analyze the results, make a
WordMicrosoft Word is a word processor designed by Microsoft. It was first released in 1983 under the name Multi-Tool Word for Xenix systems. Subsequent versions were later written for several other platforms including IBM PCs running DOS , the Apple Macintosh , the AT&T Unix PC , Atari ST , SCO UNIX,...
report or
Power PointMicrosoft PowerPoint, usually just called PowerPoint, is a non-free commercial presentation program developed by Microsoft. It is part of the Microsoft Office suite, and runs on Microsoft Windows and Apple's Mac OS X operating system...
slide show, and e-mail these presentations on a regular basis to a list of participants.
Microsoft allows for a number of optional command-line switches to control the manner in which Excel starts.
VBA programming
The Windows version of Excel supports programming through Microsoft's
Visual Basic for ApplicationsVisual Basic for Applications is an implementation of Microsoft's event-driven programming language Visual Basic 6 and its associated integrated development environment , which are built into most Microsoft Office applications...
(VBA), which is a dialect of
Visual BasicVisual Basic is the third-generation event-driven programming language and integrated development environment from Microsoft for its COM programming model...
. Programming with VBA allows spreadsheet manipulation that is awkward or impossible with standard spreadsheet techniques. Programmers may write code directly using the Visual Basic Editor (VBE), which includes a window for writing code, debugging code, and code module organization environment. The user can implement numerical methods as well as automating tasks such as formatting or data organization in VBA and guide the calculation using any desired intermediate results reported back to the spreadsheet.
VBA was removed from Mac Excel 2008, as the developers did not believe that a timely release would allow porting the VBA engine natively to Mac OS X. VBA was restored in the next version, Mac Excel 2011.
A common and easy way to generate VBA code is by using the Macro Recorder.
The Macro Recorder records actions of the user and generates VBA code in the form of a macro. These actions can then be repeated automatically by running the macro. The macros can also be linked to different trigger types like keyboard shortcuts, a command button or a graphic. The actions in the macro can be executed from these trigger types or from the generic toolbar options. The VBA code of the macro can also be edited in the VBE. Certain features such as loop functions and screen prompts by their own properties, and some graphical display items, cannot be recorded, but must be entered into the VBA module directly by the programmer. Advanced users can employ user prompts to create an interactive program, or react to events such as sheets being loaded or changed.
VBA code interacts with the spreadsheet through the Excel
Object Model, a vocabulary identifying spreadsheet objects, and a set of supplied functions or
methods that enable reading and writing to the spreadsheet and interaction with its users (for example, through custom toolbars or
command bars and
message boxes). User-created VBA
subroutineIn computer science, a subroutine is a portion of code within a larger program that performs a specific task and is relatively independent of the remaining code....
s execute these actions and operate like macros generated using the macro recorder, but are more flexible and efficient.
Charts
Excel supports
chartA chart is a graphical representation of data, in which "the data is represented by symbols, such as bars in a bar chart, lines in a line chart, or slices in a pie chart"...
s,
graphsIn mathematics, the graph of a function f is the collection of all ordered pairs . In particular, if x is a real number, graph means the graphical representation of this collection, in the form of a curve on a Cartesian plane, together with Cartesian axes, etc. Graphing on a Cartesian plane is...
or
histogramIn statistics, a histogram is a graphical representation showing a visual impression of the distribution of data. It is an estimate of the probability distribution of a continuous variable and was first introduced by Karl Pearson...
s generated from specified groups of cells. The generated graphic component can either be embedded within the current sheet, or added as a separate object.
These displays are dynamically updated if the content of cells change. For example, suppose that the important design requirements are displayed visually; then, in response to a user's change in trial values for parameters, the curves describing the design change shape, and their points of intersection shift, assisting the selection of the best design.
Using other Windows applications
Windows applications such as
Microsoft AccessMicrosoft Office Access, previously known as Microsoft Access, is a relational database management system from Microsoft that combines the relational Microsoft Jet Database Engine with a graphical user interface and software-development tools. It is a member of the Microsoft Office suite of...
and
Microsoft WordMicrosoft Word is a word processor designed by Microsoft. It was first released in 1983 under the name Multi-Tool Word for Xenix systems. Subsequent versions were later written for several other platforms including IBM PCs running DOS , the Apple Macintosh , the AT&T Unix PC , Atari ST , SCO UNIX,...
, as well as Excel as can communicate with each other and use each others' capabilities.
The most common are
Dynamic Data ExchangeDynamic Data Exchange is a technology for interprocess communication under Microsoft Windows or OS/2.- Overview :Dynamic Data Exchange was first introduced in 1987 with the release of Windows 2.0 as a method of interprocess communication so that one program can communicate with or control another...
: although strongly deprecated by Microsoft, this is a common method to send data between applications running on Windows, with official MS publications referring to it as "the protocol from hell". As the name suggests, it allows applications to supply data to others for calculation and display. It is very common in financial markets, being used to connect to important financial data services such as
BloombergBloomberg L.P. is an American privately held financial software, media, and data company. Bloomberg makes up one third of the $16 billion global financial data market with estimated revenue of $6.9 billion. Bloomberg L.P...
and
ReutersReuters is a news agency headquartered in New York City. Until 2008 the Reuters news agency formed part of a British independent company, Reuters Group plc, which was also a provider of financial market data...
.
OLEObject Linking and Embedding is a technology developed by Microsoft that allows embedding and linking to documents and other objects. For developers, it brought OLE Control eXtension , a way to develop and use custom user interface elements...
Object Linking and Embedding: allows a Windows application to control another to enable it to format or calculate data. This may take on the form of "embedding" where an application uses another to handle as task that it is more suited to, for example a Powerpoint presentation may be embedded in an Excel spreadsheet or vice versa.
Using external data
Excel users can access external
data sourceA data source is any of the following types of sources for digitized data:*a database** in the Java software platform, datasource is a special name for the connection set up to a database from a server*a computer file*a data stream...
s via Microsoft Office features such as (for example)
.odc connections built with the Office Data Connection file format. Excel files themselves may be updated using a Microsoft supplied ODBC driver.
Excel can accept data in real time through several programming interfaces, which allow it to communicate with many data sources such as Bloomberg and Reuters.
- DDE : "Dynamic Data Exchange" uses the message passing mechanism in Windows to allow data to flow between Excel and other applications. Although it is easy for users to create such links, programming such links reliably is so difficult that Microsoft, the creators of the system, officially refer to it as "the protocol from hell". In spite of its many issues DDE remains the most common way for data to reach traders in financial markets.
- Network DDE Extended the protocol to allow spreadsheets on different computers to exchange data. Given the view above, it is not surprising that in Vista, Microsoft no longer supports the facility.
- Real Time Data : RTD although in many ways technically superior to DDE, has been slow to gain acceptance, since it requires non-trivial programming skills, and when first released was neither adequately documented nor supported by the major data vendors.
Alternatively,
Microsoft QueryMicrosoft Query by Example is a method of creating database queries using examples based on a text string, the name of a document or a list of documents. The QBE system converts the user input into a formal database query...
provides
ODBC-basedIn computing, ODBC is a standard C interface for accessing database management systems . The designers of ODBC aimed to make it independent of database systems and operating systems...
browsing within Microsoft Excel.
Quirks
A major complaint is finding relevant assistance from the associated help system. Contributing to this issue is the Excel 2007 menu system, which adapts to the users' history of use. That adaptivity means that there may be no unique, or perhaps even straightforward, way to explain how to do a particular task.
Other errors specific to Excel include misleading statistics functions, mod function errors, date limitations and the Excel 2007 error.
Statistical functions
The accuracy and convenience of statistical tools in Excel has been criticized, as mishandling missing data, as returning incorrect values due to inept handling of round-off and large numbers, as only selectively updating calculations on a spreadsheet when some cell values are changed, and as having a limited set of statistical tools. Microsoft has announced some of these issues are addressed in Excel 2010.
Graphing
The menus related to graphs and graph formatting have been changed completely in Excel 2007. Some common activities in using graphs are less transparent than previously. For example, to add a curve to a graph, one can right click on the graph and choose "select data" from the drop-down menu, or use the "chart tools/design" tab. However, when there are other drop-down menus open, this menu doesn't appear and the "select data" option is grayed out (unavailable) from the toolbar. That facet of the menu system must be "discovered" by the user. These quirks and other nontransparent features contribute to a long learning curve, and to annoyance if one returns to Excel after an absence long enough to forget these little "tricks" of the menu system.
Excel MOD function error
Excel has issues with
modulo operationIn computing, the modulo operation finds the remainder of division of one number by another.Given two positive numbers, and , a modulo n can be thought of as the remainder, on division of a by n...
s. In the case of excessively large results, Excel will return the error warning
#NUM! instead of an answer.
Date problems
Excel includes January 0, 1900 and February 29, 1900, incorrectly treating 1900 as a
leap yearA leap year is a year containing one extra day in order to keep the calendar year synchronized with the astronomical or seasonal year...
. The bug originated from
Lotus 1-2-3Lotus 1-2-3 is a spreadsheet program from Lotus Software . It was the IBM PC's first "killer application"; its huge popularity in the mid-1980s contributed significantly to the success of the IBM PC in the corporate environment.-Beginnings:...
, and was purposely implemented in Excel for the purpose of
backward compatibilityIn the context of telecommunications and computing, a device or technology is said to be backward or downward compatible if it can work with input generated by an older device...
. This legacy has later been carried over into Office Open XML file format.
Filenames
Microsoft Excel will not open two documents with the same name and instead will display the following error:
- A document with the name '%s' is already open. You cannot open two documents with the same name, even if the documents are in different folders. To open the second document, either close the document that is currently open, or rename one of the documents.
The reason is for calculation ambiguity with linked cells. If there is a cell ='[Book1.xlsx]Sheet1'!$G$33, and there are two books named "Book1" open, there is no way to tell which one the user means.
Numeric precision
Despite the use of 15-figure precision, Excel can display many more figures (up to thirty) upon user request. But the displayed figures are
not those actually used in its computations, and so, for example, the difference of two numbers may differ from the difference of their displayed values. Although such departures are usually beyond the 15th decimal, exceptions do occur, especially for very large or very small numbers. Serious errors can occur if decisions are made based upon automated comparisons of numbers (for example, using the Excel
If function), as equality of two numbers can be unpredictable.
In the figure the fraction 1/9000 is displayed in Excel. Although this number has a decimal representation that is an infinite string of ones, Excel displays only the leading 15 figures. In the second line, the number one is added to the fraction, and again Excel displays only 15 figures. In the third line, one is subtracted from the sum using Excel. Because the sum in the second line has only eleven 1's after the decimal, the difference when 1 is subtracted from this displayed value is three 0's followed by a string of eleven 1's. However, the difference reported by Excel in the third line is three 0's followed by a string of
thirteen 1's and two extra erroneous digits. Thus, the numbers Excel calculates with to obtain the third line are
not the numbers that it displays in the first two lines. Moreover, the error in Excel's answer is not just
round-off errorA round-off error, also called rounding error, is the difference between the calculated approximation of a number and its exact mathematical value. Numerical analysis specifically tries to estimate this error when using approximation equations and/or algorithms, especially when using finitely many...
.
Excel works with a modified 1985 version of the IEEE 754 specification. Excel's implementation involves an amalgam of truncations and conversions between binary and decimal representations, leading to accuracy that sometimes is better than one would expect from simple fifteen digit precision, and sometimes much worse. See the main article for details.
Besides accuracy in user computations, the question of accuracy in Excel-provided functions may be raised. Particularly in the arena of statistical functions, Excel has been criticized for sacrificing accuracy for speed of calculation.
As many calculations in Excel are executed using
VBAVisual Basic for Applications is an implementation of Microsoft's event-driven programming language Visual Basic 6 and its associated integrated development environment , which are built into most Microsoft Office applications...
, an additional issue is the accuracy of VBA, which varies with variable type and user-requested precision.
Excel 2.0
Microsoft originally marketed a spreadsheet program called
MultiplanMultiplan was an early spreadsheet program developed by Microsoft. Known initially by the code name "EP" , it was introduced in 1982 as a competitor for VisiCalc....
in 1982. Multiplan became very popular on
CP/MCP/M was a mass-market operating system created for Intel 8080/85 based microcomputers by Gary Kildall of Digital Research, Inc...
systems, but on
MS-DOSMS-DOS is an operating system for x86-based personal computers. It was the most commonly used member of the DOS family of operating systems, and was the main operating system for IBM PC compatible personal computers during the 1980s to the mid 1990s, until it was gradually superseded by operating...
systems it lost popularity to
Lotus 1-2-3Lotus 1-2-3 is a spreadsheet program from Lotus Software . It was the IBM PC's first "killer application"; its huge popularity in the mid-1980s contributed significantly to the success of the IBM PC in the corporate environment.-Beginnings:...
. Microsoft released the first version of Excel for the Mac in 30 September 1985, and the first Windows version (numbered 2.05 to line up with the Mac and bundled with a run-time Windows environment) in November 1987. Lotus was slow to bring 1-2-3 to Windows and by 1988 Excel had started to outsell 1-2-3 and helped Microsoft achieve the position of leading PC software developer. This accomplishment, dethroning the king of the software world, solidified Microsoft as a valid competitor and showed its future of developing
GUIIn computing, a graphical user interface is a type of user interface that allows users to interact with electronic devices with images rather than text commands. GUIs can be used in computers, hand-held devices such as MP3 players, portable media players or gaming devices, household appliances and...
software. Microsoft pushed its advantage with regular new releases, every two years or so.
Early in 1993 Excel became the target of a trademark lawsuit by another company already selling a software package named "Excel" in the finance industry. As the result of the dispute Microsoft had to refer to the program as "Microsoft Excel" in all of its formal press releases and legal documents. However, over time this practice has been ignored, and Microsoft cleared up the issue permanently when they purchased the trademark of the other program. Microsoft also encouraged the use of the letters
XL as shorthand for the program; while this is no longer common, the program's
iconA computer icon is a pictogram displayed on a computer screen and used to navigate a computer system or mobile device. The icon itself is a small picture or symbol serving as a quick, intuitive representation of a software tool, function or a data file accessible on the system. It functions as an...
on Windows still consists of a stylized combination of the two letters, and the file extension of the default Excel format is
.xls.
Excel offers many
user interfaceThe user interface, in the industrial design field of human–machine interaction, is the space where interaction between humans and machines occurs. The goal of interaction between a human and a machine at the user interface is effective operation and control of the machine, and feedback from the...
tweaks over the earliest electronic spreadsheets; however, the essence remains the same as in the original spreadsheet software,
VisiCalcVisiCalc was the first spreadsheet program available for personal computers. It is often considered the application that turned the microcomputer from a hobby for computer enthusiasts into a serious business tool...
: the program displays cells organized in rows and columns, and each cell may contain data or a formula, with relative or absolute references to other cells.
Excel became the first spreadsheet to allow the user to define the appearance of spreadsheets (fonts, character attributes and cell appearance). It also introduced intelligent cell recomputation, where only cells dependent on the cell being modified are updated (previous spreadsheet programs recomputed everything all the time or waited for a specific user command). Excel has extensive graphing capabilities, and enables users to perform
mail mergeMail merge is a software function which allows to create multiple documents from a single template form and a structured data source.-History:This technique of merging data to create gave rise to the term mail merge....
.
Excel 5.0
With version 5.0 (1993), Excel has included
Visual Basic for ApplicationsVisual Basic for Applications is an implementation of Microsoft's event-driven programming language Visual Basic 6 and its associated integrated development environment , which are built into most Microsoft Office applications...
(VBA), a programming language based on
Visual BasicVisual Basic is the third-generation event-driven programming language and integrated development environment from Microsoft for its COM programming model...
which adds the ability to automate tasks in Excel and to provide user-defined functions (UDF) for use in worksheets. VBA is a powerful addition to the application and includes a fully featured
integrated development environmentAn integrated development environment is a software application that provides comprehensive facilities to computer programmers for software development...
(IDE). Macro recording can produce VBA code replicating user actions, thus allowing simple automation of regular tasks. VBA allows the creation of forms and in-worksheet controls to communicate with the user. The language supports use (but not creation) of
ActiveXComponent Object Model is a binary-interface standard for software componentry introduced by Microsoft in 1993. It is used to enable interprocess communication and dynamic object creation in a large range of programming languages...
(
COMComponent Object Model is a binary-interface standard for software componentry introduced by Microsoft in 1993. It is used to enable interprocess communication and dynamic object creation in a large range of programming languages...
)
DLLDynamic-link library , or DLL, is Microsoft's implementation of the shared library concept in the Microsoft Windows and OS/2 operating systems...
's; later versions add support for class modules allowing the use of basic
object-oriented programmingObject-oriented programming is a programming paradigm using "objects" – data structures consisting of data fields and methods together with their interactions – to design applications and computer programs. Programming techniques may include features such as data abstraction,...
techniques.
The automation functionality provided by VBA made Excel a target for macro
virusesA computer virus is a computer program that can replicate itself and spread from one computer to another. The term "virus" is also commonly but erroneously used to refer to other types of malware, including but not limited to adware and spyware programs that do not have the reproductive ability...
. This caused serious problems until antivirus products began to detect these viruses.
MicrosoftMicrosoft Corporation is an American public multinational corporation headquartered in Redmond, Washington, USA that develops, manufactures, licenses, and supports a wide range of products and services predominantly related to computing through its various product divisions...
belatedly took steps to prevent the misuse by adding the ability to disable macros completely, to enable macros when opening a workbook or to trust all macros signed using a trusted certificate.
Versions 5.0 to 9.0 of Excel contain various Easter eggs, including a Hall of Tortured Souls, although since version 10
MicrosoftMicrosoft Corporation is an American public multinational corporation headquartered in Redmond, Washington, USA that develops, manufactures, licenses, and supports a wide range of products and services predominantly related to computing through its various product divisions...
has taken measures to eliminate such undocumented features from their products.
Excel 2000
For many users, one of the most obvious changes introduced with Excel 2000 (and the rest of the Office 2000 suite) involved a clipboard that could hold multiple objects at once. In another noticeable change the Office Assistant, whose frequent unsolicited appearance in Excel 97 had annoyed many users, became less intrusive.
Excel 2007
The most obvious change is a completely revamped user interface called the
RibbonIn GUI-based application software, a ribbon is an interface where a set of toolbars are placed on tabs in a tab bar. Recent releases of some Microsoft applications have embraced this form with a modular ribbon as their main interface. The Ribbon is a contextual interface that offers functionality...
menu system, which means a user must abandon most habits acquired from previous versions. Some practical advantages of the new system are a decreased number of mouse-clicks needed to reach a given functionality (e.g. removing the gridlines now takes 2 mouse-clicks instead of 5), greatly improved management of named variables through the
Name Manager, and much improved flexibility in formatting graphs, which now allow (
x, y) coordinate labeling and lines of arbitrary weight. The number of rows is now 1,048,576 and columns is 16,384. Several improvements to
pivot tables were introduced. Office Open XML file formats were introduced, including
.xlsm for a workbook with macros and
.xlsx for a workbook without macros.
This version makes more extensive use of multiple cores for the calculation of spreadsheets, however VBA macros are not handled in parallel and XLL addins only are executed in parallel if they are thread-safe and indicate this at the time of registration.
Microsoft Windows
- 1987 Excel 2.0 for Windows
- 1990 Excel 3.0
- 1992 Excel 4.0
- 1993 Excel 5.0 (Office 4.2 & 4.3, also a 32-bit version for Windows NT
Windows NT is a family of operating systems produced by Microsoft, the first version of which was released in July 1993. It was a powerful high-level-language-based, processor-independent, multiprocessing, multiuser operating system with features comparable to Unix. It was intended to complement...
only on the x86, PowerPCPowerPC is a RISC architecture created by the 1991 Apple–IBM–Motorola alliance, known as AIM...
, AlphaAlpha, originally known as Alpha AXP, is a 64-bit reduced instruction set computer instruction set architecture developed by Digital Equipment Corporation , designed to replace the 32-bit VAX complex instruction set computer ISA and its implementations. Alpha was implemented in microprocessors...
, and MIPSMIPS Technologies, Inc. , formerly MIPS Computer Systems, Inc., is most widely known for developing the MIPS architecture and a series of pioneering RISC chips. MIPS provides processor architectures and cores for digital home, networking and mobile applications.MIPS Computer Systems Inc. was...
architectures)
- 1995 Excel for Windows 95 (version 7.0) included in Office 95
- 1997 Excel 97 (version 8.0) included in Office 97 (for x86 and Alpha). This version of Excel includes a flight simulator as an Easter Egg
Image:Carl Oswald Rostosky - Zwei Kaninchen und ein Igel 1861.jpg|250px|thumb|right|Example of Easter egg hidden within imagerect 467 383 539 434 desc none...
.
- 1999 Excel 2000 (version 9.0) included in Office 2000
- 2001 Excel 2002 (version 10) included in Office XP
- 2003 Office Excel 2003 (version 11) included in Office 2003
- 2007 Office Excel 2007 (version 12) included in Office 2007
- 2010 Excel 2010 (version 14) included in Office 2010
- Note: No MS-DOS version of Excel 1.0 for Windows ever existed: the Windows version originated at the time the Mac version was up to 2.0.
- Note: There is no Excel 6.0, because the Windows 95
Windows 95 is a consumer-oriented graphical user interface-based operating system. It was released on August 24, 1995 by Microsoft, and was a significant progression from the company's previous Windows products...
version was launched with Word 7. All the Office 95 & Office 4.X products have OLEObject Linking and Embedding is a technology developed by Microsoft that allows embedding and linking to documents and other objects. For developers, it brought OLE Control eXtension , a way to develop and use custom user interface elements...
2 capacity — moving data automatically from various programs — and Excel 7 would show that it was contemporary with Word 7.
Apple Macintosh
- 1985 Excel 1.0
- 1988 Excel 1.5
- 1989 Excel 2.2
- 1990 Excel 3.0
- 1992 Excel 4.0
- 1993 Excel 5.0 (part of Office 4.X—Motorola 68000 version and first PowerPC version)
- 1998 Excel 8.0 (part of Office 98
Microsoft Office 98 Macintosh Edition is a Mac OS version of Microsoft Office unveiled at Macworld Expo/San Francisco on January 6, 1998. It introduced the Internet Explorer 4.0 browser and Outlook Express, an Internet e-mail client and usenet newsgroup reader...
)
- 2000 Excel 9.0 (part of Office 2001
Microsoft Office 2001, launched in 2000, was the last Office suite for Mac OS, or the Classic operating system; it required Mac OS 8, although version 8.5 or later was recommended.-Applications:...
)
- 2001 Excel 10.0 (part of Office v. X
Microsoft Office v. X was released in 2001 for the new Mac OS X platform.Office v.x was followed by Office 2004, while Support for Office v. X ended on January 9, 2007 after the release of the final update, 10.1.9-External links:*...
)
- 2004 Excel 11.0 (part of Office 2004
Office 2004 for Mac is a version of Microsoft Office developed for Apple's Mac OS X operating system. The software was originally written for the PowerPC Macs, so Macs with Intel CPUs must run the program under Mac OS X's Rosetta emulation layer....
)
- 2008 Excel 12.0 (part of Office 2008
Microsoft Office 2008 for Mac is a version of the Microsoft Office productivity suite for Mac OS X. It supersedes Office 2004 for Mac and is the Mac OS X equivalent of Office 2007. Office 2008 was developed by Microsoft's Macintosh Business Unit and released on January 15, 2008...
)
- 2011 Excel 14.0 (part of Office 2011
Microsoft Office for Mac 2011 is the most recent version of the Microsoft Office productivity suite for Mac OS X. It is the successor to Microsoft Office 2008 for Mac and is comparable to Microsoft Office 2010 for Windows....
)
Number of rows
Versions of Excel up to 7.0 had a limitation in the size of their data sets of 16K (2^14=16384) rows. Versions 8.0 through 11.0 could handle 64K (2^16=65536) rows and 256 columns (2^8 as label 'IV'). Version 12.0 can handle 1M (2^20=1048576) rows, and 16384 (2^14 as label 'XFD') columns.
File formats
Microsoft Excel up until 2007 version used a proprietary binary file format called Binary Interchange File Format (BIFF) as its primary format. Excel 2007 uses Office Open XML as its primary file format, an XML-based format that followed after a previous
XMLExtensible Markup Language is a set of rules for encoding documents in machine-readable form. It is defined in the XML 1.0 Specification produced by the W3C, and several other related specifications, all gratis open standards....
-based format called "XML Spreadsheet" ("XMLSS"), first introduced in Excel 2002.
Although supporting and encouraging the use of new XML-based formats as replacements, Excel 2007 remained backwards-compatible with the traditional, binary formats. In addition, most versions of Microsoft Excel can read
CSVA comma-separated values file stores tabular data in plain-text form. As a result, such a file is easily human-readable ....
,
DBFdBase II was the first widely used database management system for microcomputers. It was originally published by Ashton-Tate for CP/M, and later on ported to the Apple II and IBM PC under DOS...
,
SYLKSymbolic Link is a Microsoft file format typically used to exchange data between applications, specifically spreadsheets. SYLK files conventionally have a .slk suffix. Composed of only displayable ANSI characters, it can be easily created and processed by other applications, such as...
,
DIFData Interchange Format is a text file format used to import/export single spreadsheets between spreadsheet programs . It is also known as "Navy DIF"...
, and other legacy formats. Support for some older file formats were removed in Excel 2007. The file formats were mainly from DOS based programs.
Binary
OpenOffice.orgOpenOffice.org, commonly known as OOo or OpenOffice, is an open-source application suite whose main components are for word processing, spreadsheets, presentations, graphics, and databases. OpenOffice is available for a number of different computer operating systems, is distributed as free software...
has created documentation of the Excel format. Since then Microsoft made the Excel binary format specification available to freely download.
XML Spreadsheet
The
XML Spreadsheet format introduced in Excel 2002 is a simple,
XMLExtensible Markup Language is a set of rules for encoding documents in machine-readable form. It is defined in the XML 1.0 Specification produced by the W3C, and several other related specifications, all gratis open standards....
based format missing some more advanced features like storage of VBA macros. Though the intended file extension for this format is
.xml, the program also correctly handles XML files with
.xls extension. This feature is widely used by third-party applications (e.g.
MySQLMySQL officially, but also commonly "My Sequel") is a relational database management system that runs as a server providing multi-user access to a number of databases. It is named after developer Michael Widenius' daughter, My...
Query Browser) to offer "export to Excel" capabilities without implementing binary file format. The following example will be correctly opened by Excel if saved either as
Book1.xml or
Book1.xls:
xmlns:o="urn:schemas-microsoft-com:office:office"
xmlns:x="urn:schemas-microsoft-com:office:excel"
xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet"
xmlns:html="http://www.w3.org/TR/REC-html40">
x:FullRows="1">
Name |
Example |
Value |
123 |
Standard file-extensions
| Format |
Extension |
Description |
SpreadsheetA spreadsheet is a computer application that simulates a paper accounting worksheet. It displays multiple cells usually in a two-dimensional matrix or grid consisting of rows and columns. Each cell contains alphanumeric text, numeric values or formulas...
|
.xls |
Main spreadsheet format which holds data in worksheets, charts, and macros |
Add-in (VBAVisual Basic for Applications is an implementation of Microsoft's event-driven programming language Visual Basic 6 and its associated integrated development environment , which are built into most Microsoft Office applications... ) |
.xla |
Adds custom functionality; written in VBAVisual Basic for Applications is an implementation of Microsoft's event-driven programming language Visual Basic 6 and its associated integrated development environment , which are built into most Microsoft Office applications...
|
| Toolbar |
.xlb |
The file extension where Microsoft Excel custom toolbar settings are stored. |
| Chart |
.xlc |
A chart created with data from a Microsoft Excel spreadsheet that only saves the chart. To save the chart and spreadsheet save as .XLS. XLC is not supported in Excel 2007 or in any newer versions of Excel. |
| Dialog |
.xld |
Used in older versions of Excel. |
| Archive |
.xlk |
A backup of an Excel Spreadsheet |
| Add-in (DLL) |
.xll |
Adds custom functionality; written in C++C++ is a statically typed, free-form, multi-paradigm, compiled, general-purpose programming language. It is regarded as an intermediate-level language, as it comprises a combination of both high-level and low-level language features. It was developed by Bjarne Stroustrup starting in 1979 at Bell... /CC is a general-purpose computer programming language developed between 1969 and 1973 by Dennis Ritchie at the Bell Telephone Laboratories for use with the Unix operating system.... , Visual BasicVisual Basic is the third-generation event-driven programming language and integrated development environment from Microsoft for its COM programming model... , FortranFortran is a general-purpose, procedural, imperative programming language that is especially suited to numeric computation and scientific computing... , etc. and compiled in to a special dynamic-link libraryDynamic-link library , or DLL, is Microsoft's implementation of the shared library concept in the Microsoft Windows and OS/2 operating systems...
|
| Macro |
.xlm |
A macro is created by the user or pre-installed with Excel. |
| Template |
.xlt |
A pre-formatted spreadsheet created by the user or by Microsoft Excel. |
| Module |
.xlv |
A module is written in VBA (Visual Basic for Applications) for Microsoft Excel |
| Library |
.DLL |
Code written in VBA may access functions in a DLL, typically this is used to access the Windows API |
| Workspace |
.xlw |
Arrangement of the windows of multiple Workbooks |
Office Open XML
Microsoft Excel 2007, along with the other products in the
Microsoft Office 2007Microsoft Office 2007 is a Windows version of the Microsoft Office System, Microsoft's productivity suite. Formerly known as Office 12 in the initial stages of its beta cycle, it was released to volume license customers on November 30, 2006 and made available to retail customers on January 30, 2007...
suite, introduced new file-formats. The first of these (.xlsx) is defined in the Office Open XML (OOXML) specification.
The new Excel 2007 formats are:
New Excel 2007 formats
| Format |
Extension |
Description |
| Excel Workbook |
.xlsx |
The default Excel 2007 workbook format. In reality a ZIPZip is a file format used for data compression and archiving. A zip file contains one or more files that have been compressed, to reduce file size, or stored as is... compressed archive with a directory structure of XMLExtensible Markup Language is a set of rules for encoding documents in machine-readable form. It is defined in the XML 1.0 Specification produced by the W3C, and several other related specifications, all gratis open standards.... text documents. Functions as the primary replacement for the former binary .xls format, although it does not support Excel macros for security reasons. |
| Excel Macro-enabled Workbook |
.xlsm |
As Excel Workbook, but with macro support. |
| Excel Binary Workbook |
.xlsb |
As Excel Macro-enabled Workbook, but storing information in binary form rather than XML documents for opening and saving documents more quickly and efficiently. Intended especially for very large documents with tens of thousands of rows, and/or several hundreds of columns. |
| Excel Macro-enabled Template |
.xltm |
A template document that forms a basis for actual workbooks, with macro support. The replacement for the old .xlt format. |
| Excel Add-in |
.xlam |
Excel add-in to add extra functionality and tools. Inherent macro support because of the file purpose. |
Excel 2010 continues with these new formats.
Export and migration of spreadsheets
Programmers have produced
APIAn application programming interface is a source code based specification intended to be used as an interface by software components to communicate with each other...
s to open Excel spreadsheets in a variety of applications and environments other than Microsoft Excel. These include opening Excel documents on the web using either
ActiveXActiveX is a framework for defining reusable software components in a programming language-independent way. Software applications can then be composed from one or more of these components in order to provide their functionality....
controls, or plugins like the
Adobe Flash PlayerAdobe Flash is a multimedia platform used to add animation, video, and interactivity to web pages. Flash is frequently used for advertisements, games and flash animations for broadcast...
. The Apache POI opensource project provides Java libraries for reading and writing Excel spreadsheet files.
ExcelPackageExcelPackage is open-source software that provides server-side generation of Microsoft Excel 2007 spreadsheets. It is a set of classes and wrappers around the .NET 3.0 and the new Office Open XML file format. It abstracts away the complexity of dealing with the individual XML components making it...
is another open-source project that provides server-side generation of Microsoft Excel 2007 spreadsheets. PHPExcel is a PHP library that converts Excel5, Excel 2003, and Excel 2007 formats into objects for reading and writing within a web application.
See also
- Comparison of spreadsheets
- Excel Viewer
Microsoft Excel Viewer is a freeware program for viewing and printing spreadsheet documents created by Microsoft Excel.Excel Viewer is similar to Microsoft Word Viewer in functionality...
- List of spreadsheets
- Spreadmart
A spreadmart is a concept describing the tendency of spreadsheets to "run amok" in organizations. Typically a spreadmart is created by individuals at different times using different data sources and rules for defining metrics in an organization, creating a fractured view of the enterprise...
- Visual Basic for Applications
Visual Basic for Applications is an implementation of Microsoft's event-driven programming language Visual Basic 6 and its associated integrated development environment , which are built into most Microsoft Office applications...
External links