Microsoft Excel is a spreadsheet developed by Microsoft for Windows
macOS, Android, and iOS. It features calculation, graphing tools, pivot tables, and a macro programming language called Visual Basic for Applications. It has been a very widely applied spreadsheet for these platforms, especially since version 5 in 1993, and it has replaced Lotus 1-2-3 as the industry standard for spreadsheets. Excel forms part of Microsoft Office.
Features of Microsoft Excel
Basic operation of Microsoft Excel
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 for different perspectives (using pivot tables and the scenario manager). 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. It also 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 Word report or PowerPoint slide show, and e-mail these presentations on a regular basis to a list of participants. Microsoft Excel was not designed to be used as a database.
Microsoft allows for a number of optional command-line switches to control the manner in which Excel starts.
Macro programming of Microsoft Excel
Use of a user-defined function sq(x) in Microsoft Excel. The named variables x & y are identified in the Name Manager. The function sq is introduced using the Visual Basic editor supplied with Excel.
Subroutine in Excel calculates the square of named column variable x read from the spreadsheet, and writes it into the named column variable y.
The Windows version of Excel supports programming through Microsoft’s Visual Basic for Applications (VBA), which is a dialect of Visual Basic. 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 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, although the build lacks support for ActiveX objects, impacting some high-level developer tools.
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 prompt 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.
Macro Recorded code may not be compatible with Excel versions. Some code that is used in Microsoft Excel 2010 cannot be used in Microsoft Excel 2003. Making a Macro that changes the cell
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 subroutines execute these actions and operate like macros generated using the macro recorder, but are more flexible and efficient.
From its first version Excel supported end user programming of macros (automation of repetitive tasks) and user defined functions (extension of Excel’s built-in function library). In early versions of Excel these programs were written in a macro language whose statements had formula syntax and resided in the cells of special purpose macro sheets (stored with file extension .XLM in Windows.) XLM was the default macro language for Excel through Excel 4.0. Beginning with version 5.0 Excel recorded macros in VBA by default but with version 5.0 XLM recording was still allowed as an option. After version 5.0 that option was discontinued. All versions of Excel, including Excel 2010 are capable of running an XLM macro, though Microsoft discourages their use.
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.
Additional features are available using add-ins. Several are provided with Excel, including:
- Analysis ToolPak: Provides data analysis tools for statistical and engineering analysis (includes analysis of variance and regression analysis)
- Analysis ToolPak VBA: VBA functions for Analysis ToolPak
- Euro Currency Tools: Conversion and formatting for the euro currency
- Solver Add-In: Tools for optimization and equation solving
Data storage and communication
Number of rows and columns
Versions of Excel up to 7.0 had a limitation in the size of their data sets of 16K (214 = 16384) rows. Versions 8.0 through 11.0 could handle 64K (216 = 65536) rows and 256 columns (28 as label ‘IV’). Version 12.0 can handle 1M (220 = 1048576) rows, and 16384 (214 as label ‘XFD’) columns.
|Internet media type||
|Uniform Type Identifier (UTI)||com.microsoft.excel.xls|
|Type of format||Spreadsheet|
Microsoft Excel up until 2007 version used a proprietary binary file format called Excel Binary File Format (.XLS) as its primary format. Excel 2007 uses Office Open XML as its primary file format, an XML-based format that followed after a previous XML-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 backward-compatible with the traditional, binary formats. In addition, most versions of Microsoft Excel can read CSV, DBF, SYLK, DIF, and other legacy formats. Support for some older file formats was removed in Excel 2007. The file formats were mainly from DOS-based programs.
OpenOffice.org has created documentation of the Excel format. Since then Microsoft made the Excel binary format specification available to freely download.
The XML Spreadsheet format introduced in Microsoft Excel 2002 is a simple, XML 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. MySQL 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:
<?xml version="1.0"?> <Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet" 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"> <Worksheet ss:Name="Sheet1"> <Table ss:ExpandedColumnCount="2" ss:ExpandedRowCount="2" x:FullColumns="1" x:FullRows="1"> <Row> <Cell><Data ss:Type="String">Name</Data></Cell> <Cell><Data ss:Type="String">Example</Data></Cell> </Row> <Row> <Cell><Data ss:Type="String">Value</Data></Cell> <Cell><Data ss:Type="Number">123</Data></Cell> </Row> </Table> </Worksheet> </Workbook>
Microsoft Excel Viewer
Microsoft Excel Viewer is a freeware program for viewing and printing spreadsheet documents created by Excel. Excel Viewer is similar to Microsoft Word Viewer in functionality. (There is not a current version for the Mac.) Excel Viewer is available for Microsoft Windows and Windows CE handheld PCs, such as the NEC MobilePro. It is also possible to open Excel files using certain online tools and services. Online excel viewers do not require users to have Microsoft Excel installed.
Microsoft originally marketed a spreadsheet program called Multiplan in 1982. Multiplan became very popular on CP/M systems, but on MS-DOS systems it lost popularity to Lotus 1-2-3. Microsoft released the first version of Excel for the Macintosh on September 30, 1985, and the first Windows version was 2.05 (to synchronize with the Macintosh version 2.2) in November 1987. Lotus was slow to bring 1-2-3 to Windows and by the early 1990s Excel had started to outsell 1-2-3 and helped Microsoft achieve its position as a leading PC software developer. This accomplishment solidified Microsoft as a valid competitor and showed its future of developing GUI software. Microsoft maintained its advantage with regular new releases, every two years or so.
Excel 2.0 is the first version of Excel for the Intel platform. Versions prior to 2.0 were only available on the Apple Macintosh.
Excel 2.0 (1987)
The first Windows version was labeled “2” to correspond to the Mac version. This included a run-time version of Windows.
BYTE in 1989 listed Excel for Windows as among the “Distinction” winners of the BYTE Awards. The magazine stated that the port of the “extraordinary” Macintosh version “shines”, with a user interface as good as or better than the original.
Excel 3.0 (1990)
Included toolbars, drawing capabilities, outlining, add-in support, 3D charts, and many more new features.
Excel 4.0 (1992)
Also, an easter egg in Excel 4.0 reveals a hidden animation of a dancing set of numbers 1 through 3, representing Lotus 1-2-3, which was then crushed by an Excel logo.
Excel 5.0 (1993)
With version 5.0, Excel has included Visual Basic for Applications (VBA), a programming language based on Visual Basic 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 environment (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 ActiveX (COM) DLL‘s; later versions add support for class modules allowing the use of basic object-oriented programming techniques.
The automation functionality provided by VBA made Excel a target for macro viruses. This caused serious problems until antivirus products began to detect these viruses. Microsoft 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 Microsoft has taken measures to eliminate such undocumented features from their products.
5.0 was released in a 16-bit x86 version for Windows 3.1 and later in a 32-bit version for NT 3.51 (x86/Alpha/PowerPC)
Excel 95 (v7.0)
Microsoft Excel 95
Released in 1995 with Microsoft Office for Windows 95, this is the first major version after Excel 5.0, as there is no Excel 6.0 with all of the Office applications standardizing on the same major version number.
Internal rewrite to 32-bits. Almost no external changes, but faster and more stable.
Excel 97 (v8.0)
Included in Office 97 (for x86 and Alpha). This was a major upgrade that introduced the paper clip office assistant and featured standard VBA used instead of internal Excel Basic. It introduced the now-removed Natural Language labels.
This version of Excel includes a flight simulator as an Easter Egg.
Microsoft Excel 2000 (v9.0)
Microsoft Excel 2000
Included in Office 2000. This was a minor upgrade but introduced an upgrade to the clipboard where it can hold multiple objects at once. The Office Assistant, whose frequent unsolicited appearance in Excel 97 had annoyed many users, became less intrusive.
Microsoft Excel 2002 (v10.0)
Included in Office XP. Very minor enhancements.
Microsoft Excel 2003 (v11.0)
Included in Office 2003. Minor enhancements, most significant being the new Tables.
Microsoft Excel 2007 (v12.0)
Microsoft Excel 2007
Included in Office 2007. This release was a major upgrade from the previous version. Similar to other updated Office products, Excel in 2007 used the new Ribbon menu system. This was different from what users were used to, and was met with mixed reactions. One study reported fairly good acceptance by users except highly experienced users and users of word processing applications with a classical WIMP interface but was less convinced in terms of efficiency and organization. However, an online survey reported that a majority of respondents had a negative opinion of the change, with advanced users being “somewhat more negative” than intermediate users, and users reporting a self-estimated reduction in productivity.
Added functionality included the SmartArt set of editable business diagrams. Also added was an improved management of named variables through the Name Manager, and much – improved flexibility in formatting graphs, which allow (x, y) coordinate labeling and lines of arbitrary weight. Several improvements to pivot tables were introduced.
Also like other office products, the Office Open XML file formats were introduced, including .xlsm for a workbook with macros and .xlsx for a workbook without macros.
Specifically, many of the size limitations of previous versions were greatly increased. To illustrate, the number of rows was now 1,048,576 (220) and columns was 16,384 (214; the far-right column is XFD). This changes what is a valid A1 reference versus a named range. This version made more extensive use of multiple cores for the calculation of spreadsheets; however, VBA macros are not handled in parallel and XLL add‑ins were only executed in parallel if they were thread-safe and this was indicated at registration.
Microsoft Excel 2010 (v14.0)
Microsoft Excel 2010 running on Windows 7
Minor enhancements and 64-bit support, including the following:
- Multi-threading recalculation (MTR) for commonly used functions
- Improved pivot tables
- More conditional formatting options
- Additional image editing capabilities
- In-cell charts called sparklines
- Ability to preview before pasting
- Office 2010 backstage feature for document-related tasks
- Ability to customize the Ribbon
- Many new formulas, most highly specialized to improve accuracy
Microsoft Excel 2013 (v15.0)
Included in Office 2013, along with a lot of new tools included in this release:
- Improved Multi-threading and Memory Contention
- Power View
- Power Pivot
- Timeline Slicer
- Windows App
- 50 new functions
Excel 2016 (v16.0)
Included in Office 2016, along with a lot of new tools included in this release:
- Power Query integration
- Read-only mode for Excel
- Keyboard access for Pivot Tables and Slicers in Excel
- New Chart Types
- Quick data linking in Visio
- Excel forecasting functions
- Support for multi-selection of Slicer items using touch
- Time grouping and Pivot Chart Drill Down
- Excel data cards