Microsoft Excel

Microsoft Excel是Microsoft为使用Windows和macOS操作系统的电脑编写的一款试算表软件。直观的界面、出色的计算功能和图表工具，再加上成功的市场营销，使Excel成为最流行的个人计算机数据处理软件。在1993年，作为Microsoft Office的组件发布了5.0版之后，Excel就开始成为所适用操作平台上的电子制表软件的霸主。

## 历史

1982年，Microsoft推出了它的第一款电子制表软件──Multiplan，并在CP/M系统上大获成功，但在MS-DOS系统上，Multiplan败给了Lotus 1-2-3。这个事件促使了Excel的诞生，正如Excel研发代号Doug Klunder：做Lotus 1-2-3能做的，并且做的更好。1985年，第一款Excel诞生，它只用于Mac系统；1987年11月，第一款适用于Windows系统的Excel也产生了（与Windows环境直接捆绑，在Mac中的版本号为2.0）。Lotus1-2-3迟迟不能适用于Windows系统，到了1988年，Excel的销量超过了Lotus，使得Microsoft站在了PC软件商的领先位置。这次的事件，促成了软件王国霸主的更替，Microsoft巩固了它强有力的竞争者地位，并从中找到了发展图形软件的方向。此后大约每两年，Microsoft就会推出新的版本来扩大自身的优势，目前Excel的最新版本为22，也被称作Microsoft Office Excel 2022。

早期，由于和另一家公司出售的名为Excel的软件同名，Excel曾成为了商标法的目标，经过审判，Microsoft被要求在它的正式文件和法律文档中以Microsoft Excel来命名这个软件。但是，随着时间的过去，这个惯例也就逐渐消逝了。

Excel虽然提供了大量的用户界面特性，但它仍然保留了第一款电子制表软件VisiCalc的特性：行、列组成单元格，数据、与数据相关的公式或者对其他单元格的绝对引用保存在单元格中。

Excel是第一款允许用户自定义界面的电子制表软件（包括字体、文字属性和单元格格式）。它还引进了“智能重算”的功能，当单元格数据变动时，只有与之相关的数据才会更新，而原先的制表软件只能重算全部数据或者等待下一个指令。同时，Excel还有强大的图形功能。

1993年Excel第一次被捆绑进Microsoft Office中时，Microsoft就对Microsoft Word和PowerPoint的界面进行了重新设计，以适应这款当时极为流行的应用程序。

从1993年，Excel就开始支持Visual Basic for Applications（VBA）.VBA是一款功能强大的工具，它使Excel形成了独立的编程环境。使用VBA和宏，可以把手工步骤自动化，VBA也允许创建窗体来获得用户输入的信息。但是，VBA的自动化功能也导致Excel成为宏病毒的攻击目标。

从5.0到9.0，Excel中都隐藏了不同的复活节彩蛋。

## 版本

用于MS-DOS 的版本包括：

- 1987年Excel 2.0 for MS-DOS 3.0

用于Microsoft Windows的版本包括：

- 1987年Excel 2 for Windows
- 1990年Excel 3
- 1992年Excel 4
- 1993年Excel 5
- 1995年Excel 95 - 亦称7
- 1997年Excel 97 - 亦称8
- 1999年Excel 2000 - 亦称9
- 2001年Excel XP - 亦称10
- 2003年Excel 2003 - 亦称11
- 2006年Excel 2007 - 亦称12
- 2010年Excel 2010 - 亦称14
- 2013年Excel 2013 - 亦称15
- 2016年Excel 2016 - 亦称16
- 2019年Excel 2019 - 亦称17
- 2022年Excel 2022

用于Apple macOS的版本包括：

- 1985年 Excel 1.0
- 1988年 Excel 1.5
- 1989年 Excel 2.2
- 1990年 Excel 3.0
- 1992年 Excel 4.0
- 1993年 Excel 5.0 （Office 4.x 的一部分，最后的摩托罗拉680x0版本，第一个PowerPC版本）
- 1998年 Excel 8.0 （Office 98 的一部分）
- 2000年 Excel 9.0 （Office 2001 的一部分）
- 2001年 Excel 10.0 （Office v.X 的一部分）
- 2004年 Excel 11.0 （Office 2004 的一部分）
- 2008年 Excel 12.0 （Office 2008 的一部分）
- 2010年 Excel 14.0 （Office 2011 的一部分）
- 2015年 Excel 15.0 （Office 2016 的一部分）

用于OS/2的版本包括：

- 1989年Excel 2.2
- 1990年Excel 2.3
- 1991年Excel 3.0

此外尚有针对iOS、Android、Windows 10 Mobile的移动版Excel，Excel Mobile。

### 历史版本汇总

年｜名称｜版本｜注释

1987｜Excel 2｜o｜为了对应当时Macintosh版本的版本号，初始版本号被设定为2

1990｜Excel 3｜o｜增加了三维绘图功能

1992｜Excel 4｜o｜增加了自动填充功能

1993｜Excel 5｜o｜增加了 Visual Basic for Applications (VBA) 以及一些面向对象的选项

1995｜Excel 95｜o｜更改版本号以对应当时 Word 的版本（此时 Word 和 Excel 都被打包进微软公司）

1997｜Excel 97｜o

2000｜Excel 2000｜o｜Microsoft Office 2000 的一部分，也是 Windows Millennium（也称 Windows ME）的组成部分。

2002｜Excel 2002｜o

2003｜Excel 2003｜o｜在上一版发布一年后就发布，目的是为了更好的协同 Microsoft Office 的其它部分（Word、PowerPoint 等）

2007｜Excel 2007

2010｜Excel 2010｜因部分地区对数字13的迷信而跳过版本号 13

2013｜Excel 2013｜增加了50个新函数

2016｜Excel 2016｜c｜Microsoft Office 2016的一部分

2019｜Excel 2019

年｜名称｜版本｜注释

1985｜Excel 1｜o｜Excel的初始版本

1988｜Excel 1.5｜o

1989｜Excel 2｜o

1990｜Excel 3｜o

1992｜Excel 4｜o

1993｜Excel 5｜o｜只能运行在使用 PowerPC 处理器的 Mac 设备上。第一个 PowerPC 版本。

1998｜Excel 98｜o｜Excel 6 和 Excel 7 为了对应其他 Microsoft Office 软件的版本号而被跳过

2000｜Excel 2000｜o

2001｜Excel 2001｜o

2004｜Excel 2004｜o

2008｜Excel 2008

2011｜Excel 2011｜跟Windows的版本一样，13号版本因为迷信而被跳过。

2015｜Excel 2015

2016｜Excel 2016｜c｜与 Microsoft Office 的其它部分相同，自2016年起，发布日期将尽可能地与 Windows 版本相同。

年｜名称｜版本｜注释

1989｜Excel 2.2｜o｜版本号处于当时 Windows 版本的版本号之间

1990｜Excel 2.3｜o

1991｜Excel 3｜o｜最后的 OS/2 版本。该子系列被终止，但此时 Excel 仍然在开发及维护。

## 开源类库

开源类库支持在Microsoft Excel应用程序以外的环境中打开Excel电子表格。以下列出几种常见的专案：

Go语言：Excelize是Go语言编写的一个用来操作Office Excel文档类库，可以使用它来读取、写入带有复杂样式的XLSX文件。

Java：Apache POI开源项目提供用于读取和写入Excel电子表格文件的Java库。

PHP：PHPExcel 是一个PHP语言的实现，可在Web应用中读取Excel5、Excel 2003和Excel 2007格式的文档。

.NET：Excel Services是使用.NET开发的工具。

Python：使用 xlrd 和 openpyxl 可以使用Python访问Excel电子表格。

Javascript：js-xlsx 和 js-xls 可以使用JS打开Excel电子表格。

## 密码保护

Microsoft Excel中的密码保护提供了几种类型：

- 利用密码以打开一个文档
- 利用密码以修改文档
- 利用密码以取消保护工作表
- 利用密码以保护工作簿
- 利用密码以保护共享工作簿

## 技术指标

Excel 7.0 (Excel 95) 及之前版本行数只能达到16384（=214）；Excel 8.0 (Excel 97/98) 至 Excel 11.0 (Excel 2003/2004) 将这一限制更改为65536（=216）行、256（=28，列标签为IV）列。自 Excel 12.0 (Excel 2007/2008) 起，行数上限更改为1048576（=220），列数上限被更改为16384（=214，列标签为XFD）。

Excel的时间系统中，会认为1900年2月29日是有效日期，也就是1900年为闰年，但实际上并不是。这是源于模仿早期竞品Lotus 1-2-3上的缺陷而引入的特性，由于Lotus 1-2-3的时间纪元以1900年起始，之后的时间为差值累加，导致其时间体系一开始就认为1900年是闰年，而Excel为了兼容Lotus 1-2-3的文件格式，也保留了这个缺陷作为特性而不进行修复，即使至今最新版本已不需要兼容Lotus 1-2-3。

## 竞争对手

- Google文件
- AceyOffice
- Ability Spreadsheet
- EditGrid
- Framework
- Lotus 1-2-3
- Gnumeric
- KSpread
- OpenOffice.org Calc
- Origin
- Quattro Pro
- The Cruncher（for MacIntosh）
- VisiCalc
- WPS表格
- LibreOffice

## 基本资料

- 开发者：微软
- 发行日期：1987年11月19日
- 软件版本周期：2019 (16.0.12430.20264)
- 软件版本周期：2020年2月11日
- 类型：试算表软件
- 许可协议：专有软件
- 操作系统：Microsoft Windows
- 日语原文：Microsoft Excel（Android）
- 许可协议：专有软件
- 软件版本周期：16.0.10325.20043
- 操作系统：Android
- 档案格式：xlsx
- 日语原文：Microsoft Excel（macOS）
- 软件版本周期：15.34.0 (170515)
- 操作系统：macOS