Microsoft Excel

Microsoft Excelは、マイクロソフトがWindows、macOS、iOSおよびAndroid向けに開発・販売している表計算ソフト。

Microsoft Wordとともに、同社のオフィススイート「Microsoft Office」の中核をなすアプリケーションである。

1. 概要
-----

Excelは表計算ソフトであるため、本来は表を作成して合計などの計算や、これを基にしたグラフの作成などに用いられるものである。「平均を求める」「標準偏差を求める」「文字列中のn番目の文字を取り出す」などの利用頻度の高い計算や検索の作業は、数百種類ある「関数」と呼ばれる手続きにまとめられており、この関数を組み合わせることで高度な計算も可能である。また結果のグラフ化も簡単な操作で行え、棒グラフや円グラフなど利用頻度が多いものから、株価チャートやパレート図など専門的なグラフも選択できる。

大量のデータ分析に特化した専用ソフトと比較し機能は劣るが、小売店の売り上げや在庫数を管理・分析する程度であれば関数で十分対応できるため、現場レベルで使用する簡易の分析ソフトとしても利用されている。大手オンライン講座プラットフォーム「コーセラ」のデータサイエンスとビジネス講座カテゴリーに「Microsoft Excel」のサブカテゴリーがあるなど、データサイエンス時代にはすっかり定着している。

1つのファイルで複数のワークシートを使用できることや、数値だけでなく文字列や日付を扱うことができることを利用して、データベースの入力や関数による計算をそれぞれ分担することも可能であり、店舗の在庫管理など簡易的な用途であれば本格的データベースソフトであるMicrosoft Accessの代用としても運用可能である。

一方で、サイズの大きいファイルを開いても比較的軽快に動作することや、多くのコンピュータにインストールされておりワークシート上にオブジェクトを貼り込むことができるなどの点から、日本では特に計算などは行わず、ワークシートを方眼紙に見立てた申請書や設計書や進捗管理用の単なる表作成に使用されることも多く、「Excel方眼紙」などと揶揄されている。揶揄される理由は、文書作成や進捗管理のような本来WordやProjectなどで行うべきことを表計算ソフトのExcelで行うことで、極めて編集しづらくなり、またExcelの特長であるデータの集計や再利用性も台無しになるためである。

この他、付属のマクロ言語  を利用して金融情報サイトから株価データの取り込み、ゲーム製作といった、「表計算」のイメージを超えた広い応用範囲を持つソフトであり、汎用的なアプリケーション開発環境の一つと捉えることもできる。なお、Mac OS X版のExcel 2008ではVBAマクロ機能は除去され、マクロ機能についてはAppleScriptを使用することが推奨されたが、Mac OS X版のExcel 2011ではVBAマクロ機能が復活している。

JPEGなどの画像ファイルをインポートしてシート上に貼り付けたり、オートシェイプ機能により作成した矢印などの図形を表やグラフに貼り付けたりすることも可能であり、限定的な用途であればプレゼンテーションソフトウェアであるMicrosoft PowerPointの代用としても運用可能である。Adobe Illustratorなどの本格的なドローソフトに比べ機能は劣るものの、安価で低スペックのPCでも動作するため工夫すれば本格的な作画も可能である。

極端な例であるが、関数とグラフを利用して擬似的なプログラミングも可能であり、VBAを使用せずにファミリーコンピュータ用のゲームソフトを再現した者もいる。

2. 特徴
-----

Excelが導入した特徴のひとつに、「セルの結合」がある。表計算ソフトに代表される、いわゆるスプレッドシートは、マス目状のセルに文字や数値、計算式、関数などを入れていくものであるが、表作成などの際、複数の項目に共通の見出しをつけたい場合など、マス目が制約となって目的の表示位置を作り出しにくい場合がある。エクセルではこれに対して、複数のセルを結合して一つのセルとすることができる。これは表示の自由度を大きく高めるものである。反面、これを行った場合は縦横の行と列が乱れるため、数式のコピーでの相対位置移動などが不可能になることがあり、元来スプレッドシートの持っている汎用性や一貫性・利便性を損なう場合もある。

標準の保存ファイル形式は拡張子に.xlsまたは.xlsxを使用したもので「Excel ブック」と呼ばれる。他にもテキストやCSV、HTML形式での入出力が可能で、Excel 2003以降はXMLスプレッドシートも扱えるようになった。

バージョン2007からはユーザインタフェースがリボン方式に変更されただけでなく、XML準拠でのファイル入出力が標準化されるなど、大幅な仕様変更がなされた。また、サイズの小さい「バイナリ ブック」での保存が可能になった。マクロが埋め込まれたファイルは、Excel 2003まではマクロなしファイルと同様に.xlsの拡張子を用いていたが、Excel 2007からは.xlsmを使用するようになった。

そのほか、「アドイン」を使用すると、関数や機能を拡張することができる。アドインは.xla形式または.xlamで保存することで作成できる。ただし、アドインはマクロが警告なしに実行されるため、後述のマクロウイルスに感染してしまう恐れがある。

3. 歴史
-----

初版の開発コードネームは//Odyssey// 。開発責任者はダグ・クランダー 、プログラムマネージャーはジェイブ・ブルメンソール 。

同社のMS-DOS向け表計算ソフトMicrosoft Multiplanおよびグラフ作成ソフトMicrosoft Chartは統合ソフトであるロータスの1-2-3に比べ処理が遅い上に操作が難しく、北米ではシェアを大きく開けられていた。

初期の段階ではIBM PCおよびその互換機を想定したMS-DOS用アプリケーションであり、テキストモードで動作する予定であった。ただし、マウス対応、複数のワークシートを同時に表示できるMDIの採用、マクロの採用は発案時点で考慮されていた。

後に1984年にロータスがMacintosh向け統合ソフトJazzを開発していることが分かると、プラットフォームをMacintoshに移して改めて開発が進められ、1985年9月にMacintosh版が発売された。この時点で将来のWindows対応を考慮に入れていた。同製品は、GUI環境に特化した優れた操作性と高い性能を有し、ベストセラーとなった。Excelで導入された、紙に印刷する前に出力イメージを確認できるプレビュー機能は後に他の様々なアプリケーションにも採用された。

Macintosh版でGUI環境のアプリケーション開発ノウハウを蓄積したマイクロソフトは、1987年10月にMicrosoft Windows版を発売した。本バージョンは処理速度と操作性の改善、1-2-3とのファイルおよびマクロの相互変換機能が搭載され、業界各紙から賞賛を受けた。PC Magazine誌は「どの機能をとっても、Excelは1-2-3より優れている」とコメントし、Infoworld誌は「マイクロソフトは表計算ソフト市場の他の製品よりパワフルで先進性のある、この年で最も革新的な製品を作り出した。」とコメントした。アーサー・アンダーセン会計事務所やアメリカ合衆国労働省がExcelの採用を決めるなど、Excelは1-2-3の独占的シェアを脅かす存在になった。

Microsoftは、Excelを核にワープロ  やデータベース 、スケジュール管理ソフト  などを統合した高性能オフィススイート製品Microsoft Officeの販売を優先することで、Windows向けオフィススイートのデファクトスタンダードの座を確保することに成功した。そして、PCのプラットフォームがDOSからWindowsへと移行するに従い、GUIへの対応が遅れた 1-2-3 を引き離していった。ことに Microsoft Windows 95 リリース時に他社に先駆けて32ビットアプリケーションとしてリリースされたことは、他社の同様のアプリケーションに対して大きなアドバンテージとなった。Excelとのセット販売によってWordなど他のアプリケーションのシェアも高まった。

2007年1月、Excel 2007がリリースされた。リボンUIを採用したことで、操作が大きく変わった。

2013年1月、Excel 2013がリリースされた。外観が一新されフラットデザインになり、またSDIのみをサポートするようになった。

4. 技能検定
-------

技能資格としての検定は、過去にマイクロソフト公認の「エクセルマスター」「ワードマスター」という資格が存在した。1993年、1994年と2回実施され合格者はそれぞれ6名で94年の検定を最後に廃止された。これはオフィスシリーズへの製品拡充に伴う検定内容の変更と検定合格者の異常な少なさに試験範囲の見直しが行われたためである。

2016年時点でマイクロソフト公認の資格には、マイクロソフト オフィス スペシャリスト  がある。Office 2007に対応したマイクロソフト認定アプリケーションスペシャリスト  はMOSに統合・統一された。

また、日本の国家試験である情報処理技術者試験の一部の区分にも表計算ソフトに関する問題が出題されている。こちらは国家試験である特性上、特定ベンダーの製品に関する内容が出題できないため、出題される表計算ソフトは試験専用のオリジナルソフトウェアであるが、機能および関数はMicrosoft Excelのものに近いとされる。

5. 問題点
------

5.1. 1900年閏日問題
--------------

Windows版では、日付データの扱いについて、基本的には1900年1月0日を起算日として、0から始まるシリアル値で持っている。

現行のグレゴリオ暦では1900年はうるう年ではなく、平年であるため閏日は存在しないはずであるが、Windows版Excelでは、1900年2月29日を存在するものとして計算してしまう。このため、1900年3月1日より前の日を計算に使う場合、注意が必要となる。

これは「Lotus 1-2-3」のバグに由来しており、いわゆる「バグ互換性」として、初期のExcelに仕様として取り込まれたことによるものである。社長ビル・ゲイツによる直々のレビューにおいて、ゲイツがこれを的確に質問した、というエピソードがある。

なお、Windows版では「1904年から計算する」のチェックボックスが用意されている。このチェックが有効である場合、1900年〜1903年の日付使用が無効となるため、1900年2月29日の問題は発生しなくなる。なお、macOS版では、初期状態での日付の起算日が1904年1月1日となっているため、Mac ⇔ Windows 間で日付データの入ったExcelデータをやりとりする場合、日付が1462日ずれる場合がある。両者が混在する環境の場合、Windows側でMacに合わせて、「1904年から計算する」のチェックボックスを有効にすると、日付のずれはなくなる。

[1]
[2]互換ソフトであるOpenOffice.orgの//Calc//では、標準設定では1899年12月31日を起算日として、1900年2月29日は存在しないものとして扱われている。

5.2. 日付の変換問題
------------

Excel 2000以降のバージョンでは日付に西暦の下2桁を用いてセルに入力した場合、「00-29」は20xx年、「30-99」は19xx年として認識する。しかし、Excel 98までは「00」は2000年、「01-20」は平成xx年、「21-64」は昭和xx年、「65-99」は19xx年として認識していた。こうした仕様により、日付に食い違いが生じていた。

例えば、「01.09.18」と入力した場合、Excel 2000以降では「2001年9月18日」として認識するが、Excel 98以前だと「平成1年9月18日」、つまり「1989年9月18日」と認識してしまう。

これを解消するには、Excel 97ではService Release 2へアップグレードした後、「Newparse.reg」というファイルを認識させる必要がある。こうすればExcel 2000以降と同じ入力モードが実現する。

5.3. 有効桁数・小数
------------

有限資源に基づくコンピュータ全般に共通する性質であるが、理想的な数学とは異なり、取り扱える数の範囲には制限がある。Excelではこの有効桁数はそれほど大きくないため、極端に大きな数字や、小数点以下の桁数が非常に大きい数字を扱うと、まれに問題を生じることがある。

また、2のマイナス累乗  の形で表すことのできない小数は、2進法では無限小数となり、こうした数をコンピュータ上で扱うと必ず切り捨て誤差が発生する。この一見奇妙なふるまいは、計算機の数値計算に関する専門知識を持たない利用者にはバグに見える場合がある。このためマイクロソフトは計算誤差が発生していないかのように見せかけるための補正を行なっている。しかしExcelではIEEE 754規格に準拠していない部分が存在するため、専門家が数値計算に使うにはかえって向かない。

5.4. データサイズの制限
--------------

Excel 2003までは最大で65,536行、256列に制限されていた。Excel 2007以降では、最大で1,048,576行、16,384列のデータを扱えることになっているが、一定のサイズを越えると読み込むことができない。またその際に警告も出てこないため、大量のデータをExcelで扱おうとする際には注意が必要である。また、Excel 2016から標準機能になったPowerQueryを利用すれば、100万行を越えるデータでも集計をすることが可能である。

5.5. 画面表示と印刷のずれ
---------------

Excelでは、表計算ソフトという性質上、画面表示の厳密さよりも処理速度を優先しているため、画面上に表示される内容と印刷時の表示が必ずしも一致しない。かつ、表示や印刷結果はモニターの解像度やプリンターのドライバーによっても変化するため、同じファイルであっても環境によって印刷プレビュー結果および印刷結果が異なることがある。

上記は意図的な設計理由に起因するものではあるが、Excelを表計算ソフトとして用いる限り、この制限が問題となるケースは少ない。しかし、印刷物を確認や納品に利用する場面では見切れに注意が必要となる。また、「Excel方眼紙」のように本来の用途として想定されていないレイアウト目的でExcelを使用してしまうと、この問題に悩まされることになる。

5.6. リボンUI
----------

Excel 2003までのGUIは他のアプリケーションでも標準的となっていたメニューバーとツールバーによる方式であったが、Excel 2007以降はリボンと呼ばれる独自方式に変更された。ユーザーからは賛否両論があった他、2003と同様のメニューに戻すアドインまで作成された。2007年当時はディスプレイの解像度が低いコンピュータやモニタが普及していたというのもユーザーの不満を買った一因であった。2021年現在においては、リボンへの慣れやディスプレイの大型化が進み、混乱は収束している。

なお、リボン領域の高さの問題に関しては、リボンの最小化をする設定に変更することで、ある程度解消できる。また、Excel 2010以降はユーザー設定でリボンのカスタマイズができるようになっている。

6. マクロウイルス
----------

Excelでの代表的なマクロウイルスとして、Larouxがあげられる。感染したExcelブックを開くと他のExcelブックに対してもウイルスコードをコピーして保存させると共に、スタートアップフォルダにウイルスコードを持ったPersonal.xlsというExcelブックを作成保存する。Personal.xlsはExcelの起動時に自動起動されるため、感染元のExcelブックがない状態でも次々と感染させていくことになる。Laroux自体には増殖の機能しかないものの、その後の数多くのExcelマクロウイルスの原種となった。安全性が不明なファイルは、「マクロを有効にする」もしくは「コンテンツの有効化」をクリックしないことで対処できる。

7. バージョン履歴
----------

他のマイクロソフト社製品と同様、リリースから5年間のメインストリームサポートと、その次の5年間の延長サポートが提供される。基本的にサポートの終了した製品には、セキュリティホールが見つかっても修正プログラムは提供されない。

この他にMac OS、macOS、MS-DOS、OS/2、UNIXに対応したバージョンが存在する。

8. Excel Viewerと後継
------------------

Windowsのみであるが閲覧用の単独アプリケーションとしてExcel Viewerがマイクロソフトから無償で提供されていた。Microsoft Excelで作成されたスプレッドシートの表示・印刷などに限られる。2018年4月に更新およびダウンロード提供が終了し、Office MobileやOffice Onlineなどへの移行が案内されている。

9. 注釈
-----

10. 出典
------

10.1. 公式情報
----------

11. 参考文献
--------

ダニエル・イクビア/スーザン・L・ネッパー著、椋田直子訳『マイクロソフト-ソフトウェア帝国誕生の軌跡-』978-4756101181}} , アスキー
脇英世『ビル・ゲイツの野望 マイクロソフトのマルチメディア戦略』978-4062072618}} , 講談社

12. 関連項目
--------

Visual Basic for Applications
Apple Productivity Experience Group
チャールズ・シモニー
オフィススイートの比較
Excel方眼紙

12.1. 日本における競合製品
----------------

三四郎
JUST Calc
Lotus 1-2-3
LibreOffice Calc
Calc
WPS Spreadsheets
Numbers
Google スプレッドシート

13. 外部リンク
---------

[3]
[4]
[5]