スプレッドシートがエラーにつながる可能性がある理由 - パート12010年、ハーバード大学の教授、カルメン・ラインハート氏とケネス・ロゴフ氏が論文を発表しました。借金の時の成長それはすぐに、必要とされる経済的刺激の時でさえも、政府支出の増大に対して主張した人々にとって強力な裏付けとなる証拠となりました。本稿では、さまざまな期間のさまざまな国の債務水準を調べ、その債務水準がGDPの90%に達すると、経済成長は劇的に減速したと結論付けました。ポールライアン議員が2013年の予算でそれを引用したことは、この報告に非常に大きな影響を与えた。
その後、2013年4月に、マサチューセッツ大学アマースト校の3人のエコノミストが、Microsoft Excelのスプレッドシートでコーディングエラーを発見しました。これは、ReinhartとRogoffが結論の根拠として使用したものです。ハーバード大学の教授たちはその誤りをすぐに認めたが、彼らはそれが分析から引き出された結論に重大な影響を与えないと述べた。
あなたは確かに彼らの結論が正しいかどうかについて議論することができますが、それでも間違いが検出されなかったこと、そしてその方針が分析に基づいていたことは驚くべきことです。Excelを知っていて、愛しさえしている人たちにとって驚くべきことではなかったのは、エラーが起こり得、そして起こることです - しばしば。
2013年4月以降、Excelに関するその他の有名なエラーが多数の記事の主題となっています。A 最近のCNN Moneyマガジンの記事いくつかのそのようなエラーを文書化しました。最大のエラーが発生しました:
JPモルガンチェイス 2012年の取引損失は62億ドル。リスクを監視するために使用されていたExcelモデルには、いくつかの手動ステップが含まれており、平均化されるべきときに1つのセルが追加されました。 MFグローバル: 破綻する約1年前、MF Globalはリスクを監視していたExcelスプレッドシートに必要なアップグレードを行ったことは一度もありませんでした。 Lehman Brothersのバークレイズ購入: Excelスプレッドシートには、バークレイズが購入しようとしていた資産リストから削除および削除されるべき200個の隠しセルがありました。その結果、バークレイズは179の有毒取引を購入した。うた h: ユタ州の教育局は、州の公立学校に入学する生徒の数を誤って計算しました。「スプレッドシート内の誤った参照」は、2500万ドルの予算不足をもたらしました。これはブログ投稿シリーズの最初の記事です。データの更新や追加、および変更が行われるにつれて、Excelの使用がエレガントから単純になり、さらに困難になるまでの流れを説明します。
このシリーズはまた、使いやすさと柔軟性をあきらめずに分析のガバナンスを強化するように設計されたより優れたツールがあることを示唆します。
ちょっとした歴史から始めましょう。
スプレッドシート - 彼らは私たちの生活を永遠に変えました
スプレッドシートの歴史は1960年代のバッチプロセッサにさかのぼりますが、もう少し後でAppleに登場したものから始めましょう。 ® 1979年にコンピュータ:VisiCalc。
VisiCalc

友人が私の新しいAppleコンピュータを見せて5.25インチのフロッピーディスクを挿入したときにはっきりと覚えていますが、その直後にVisiCalcが緑と黒のCRTディスプレイに表示されました。(もしあなたがCRTを調べなければならないのなら、あなたはコンピューティングの世界では単なる赤ん坊です。)
私は彼がどれだけ速く(今日の世界ではカタツムリのペースで)価値を変え、そして彼の結果を再計算できるかに驚いた。魔法のようでした!
によるウィキペディア VisiCalcは最初のキラーアプリになりました。これは私の友人の会社が単独で使うためだけにコンピュータを買うほど素晴らしいアプリケーションでした。
VisiCalcの成功には大きな役割がありました。アップルII そのプログラムは後に当時普及していた他のコンピュータで使用できるようになりました。
ロータス1-2-3
1983年、私は消費財会社で働く若いシステムアナリストでした。それは時ですロータス1-2-3 IBM PC用にリリースされました。私はそれを見て、この製品が私たちに大きな競争上の優位性をもたらすと私の上司に勧めたことを覚えています。私達は私達の経理部門のためにそれらにロードされたLotus 1-2-3を搭載した3台のマシンを購入するべきだと言った。私の上司は当初懐疑的でしたが、私は彼を説得しました。それは私が今までに作った中で最高のキャリアの動きの1つでした。Lotusは大ヒットで、すぐにVisiCalcを代表的なスプレッドシート製品として打ち負かしました。
マイクロソフトエクセル
マイクロソフト発展したエクセルにマッキントッシュ ® 1985年から数年間のプラットフォーム。同社はWindows 2.0用にプログラムを書き直し、1987年にリリースした。ウィキペディアによると 。Windows版のリリースにより、Excelの市場シェアは大幅に拡大しました。ロータスはExcelに失ったマーケットシェアを取り戻すことができず、マイクロソフトはスプレッドシート市場をリードし続けました。
スプレッドシートユーザーは一度も振り返ったことがありません。今日、Excelは非常に普及していてまだ使いやすいので、現代のあらゆる分野のあらゆる組織で働いていることを知らない人には、まだ会うことができません。しかし、ああ、その使用は長年にわたってどのように変わったか。
次回の投稿(来週の水曜日)では、Excelの長所と短所について説明します。それまでの間に、共有できるExcelのホラーストーリーはありますか。
John Tateは、次のように書いています。スプレッドシートを次のように考えると便利です。ジョンテイト書きました:
スプレッドシートを本質的にプログラミングツールとして考えることは有用です。そのため、いくつかの利点があります。
少なくとも比較的単純な問題のためには非常に使いやすく、そしていくつかのより複雑な問題のためにさえ、それはまだそれほど難しくありません。
静的です。つまり、ここにあるこれらのセルはあなたのデータであり、向こうにあるそれらのセルはあなたの式です。ループ、手続き呼び出し、スタック操作などの動的な振る舞いについて考える必要はありません。
ある意味では、すべてが見えています。セルを選択すると、その値または式のいずれかがわかります。それは単純です。
もっとありますが、あなたはアイデアを得ます。
それらには不利な点もあります。それによって、その不利な点を否定するのはとても簡単です。例えば:
情報を隠すにはいくつかの方法があります。バークレーの訴訟はその一例です。また、支援技術を使用しているユーザーがアクセスできるスプレッドシート内の特定のセルをロックし、背景とフォントの色を一致させることでコンテンツを非表示にすることをお勧めします。
ソートなど、特定の操作はマウスをクリックした瞬間に動的に行われるため、整理された販売手数料などの失敗につながります。
つまり、スプレッドシートで他のプログラミングシステムと同じくらい簡単にプログラミングエラーを犯すことができます。そのため、結果が重要であれば、その能力、柔軟性、および使いやすさから、他のプログラミングシステムと同じようにしつけが必要になります。
Charles Pirrelloは書きました:こんにちはジョン。よくわからない…チャールズピレロ書きました:
こんにちはジョン。私が完全に同意するかどうかわからない。私はExcelを私の全経歴を使っていて、まだファンです。私は実際にそれができることを恐れています。しかし、私の主な関心事は、それが誤用されたとき、特にそれが重要な決定の根拠となっている場合にあります。それで私はその製品を非常に尊敬しています、しかしそれがその要素の外にある時は知っています。
チャールズピレロは書いた:ニール、よく言った。私は決して暗示しません...チャールズピレロ書きました:
ニール、
よく言った。私はExcel自体がエラーを起こしやすいということを暗示したことはありません。それは、それがとても柔軟で、その用途が当初の意図の能力を超えて拡大したということです。そして、正しいデータファイルを作成するために必要な作業の規律をもっと多くのユーザーが学んだ場合、多くのエラーがなくなるでしょう。しかし、これは興味深いジレンマを生み出します。Microsoftがそれ自体を強要していると確信しています。Excelが大成功しましたなぜならその柔軟性と使いやすさの。しかし、その使いやすさは、意図したとおり、構造と制御を犠牲にしました。Microsoftがユーザーをもっと規律あるように強制するのに必要な構造の種類を課し始めたくなかっただろう。もしそうであれば、現在のExcelの足跡はそれ自体の単なる影になると私は信じています。それでそれは人気とユーザーベースで成長し続けていて、そしてその限界に押され続けています。
Charles Pirrelloは書きました:ありがとうAdam。この...チャールズピレロ書きました:
Adamさん、コメントありがとうございます。これは重要なポイントをもたらします。私はそのExcelを言っていない自体エラーが発生しやすいです。柔軟性が非常に高いため、ユーザーが知らないうちに誤ってタスクを実行する可能性があります。あなたの例では、Excelのせいにすることはできません。それはあなたが要求したこととまったく同じでした。
Charles Pirrelloは書きました:こんにちはエミール、コメントをありがとう....チャールズピレロ書きました:
こんにちはエミール、
コメントありがとう。あなたの例は、ExcelセルはJMPが提供する種類の厳格なデータガバナンスの対象ではない独立したエンティティであるという事実を示しています。これについては、後の投稿で詳しく説明します。
ジョンシュミットは書いた:私は本当にホラーストーリーを持っていない。M ...ジョンシュミット書きました:
ホラーストーリーはあまりありません。私はABMと呼ぶという指針の原則の詳細。
マイクロソフト以外何でも。
Adam Smithは次のように書いています:私が作成した私の修士論文の一部として...アダムスミス書きました:
修士論文の一環として、Excelでシミュレーションモデルを作成しました。初期モデルの作成に多くの時間を費やした後、私は自分の初期出力を期待に反して検証することにしました。それは私がマークから離れていることがわかった!それから私は一日の大半をすべての式とセル参照をチェックすることに費やしました、しかし私は何も間違って見つけることができませんでした。欲求不満で私は検証スプレッドシートに戻り、私が私の期待と比較するために私の結果をコピーして貼り付けたとき、私はコピーしなかったことを発見しました値しかし、代わりに私はコピーした式 。したがって、数字は意味がありませんでした。私が戻って、私のモデルからの正しい値を私の期待と比較したとき、それらはその場で現れました。私のモデルには何も問題はありませんでしたが、検証ステップだけが問題でした。
Mike Claytonは書きました:例をありがとうとこんにちは...マイク・クレイトン書きました:
すばらしいです!例と歴史をありがとう。パートIIを楽しみにしています。
私はVisicalcの影響を覚えています、そして私はまだゲイツ氏が最初のマックのアイデアを愛した(そしてクローンした)ので、私はまだボード上にエクセル1.0を持っている私のアップルマックSEを持っています。彼のバージョン1のExcelは49Kで動作します。現在のバージョンは少し大きめです。彼のチームがあるバージョンのExcelでFlight Simulatorを隠したときも覚えています。浮動小数点エラー、および統計アドインエラーもあります。
Six SigmaやSPCなどをサポートすることを目的としたExcelテンプレートが多数あり、使用前に十分にテストする必要があります。それらは通常、基本的にExcelのグラフィカルおよび統計機能を改善しようとするために約250ドルかかります。しかし、各グラフには通常、通常各グラフに固有の特別なデータ構造化が必要です。
私のクライアントの中には、JMPユーザーが、より重要なデータ分析とレポート作成の取り組みにおいて、Excelを使用する100人以上の管理者とQAおよびサプライチェーンの人々をサポートしている人もいます。必然的に、いくつかの優れた結果はJMPエラーの「証拠」として送り返されますが、それはExcel側の人的エラーであることが判明しました。古いExcelのマクロの中には、実際には「間違っていることがわかっているとして無視される」ような悪いコードを使って大規模なエンタープライズ操作を実行するものがありますが、作者は会社を辞めました。
ニールは書いた:それは面白い、しかしもちろん問題は...ニール書きました:
興味深いことですが、もちろんCNNの記事から引用した例の問題は、古き良き時代のユーザーエラーであり、Excelが原因と考えられるエラーではありません。
両社が行動を起こそうと決心した場合、Excelが想定していたことをしていなかったため、Microsoftを訴えることはできませんでした。後でハイライトするのは、さまざまな種類のソフトウェアでエラーをチェックするためのより適切なコントロールを用意できることですが、これらのエラーのいくつか(200行の隠し行など)は未だに関係なく発生します。
一般的な間違いに対するコントロールで人的ミスのリスクを最小限に抑えることは可能ですが、それらを完全に根絶することはほとんど不可能です。
もちろん、Excelは非常に柔軟であり、ご存知のとおり、基本的なスプレッドシートアプリケーションをはるかに超えたものになっています。基本的な式のチェック、入れ子になったIFステートメント、またはVBAを通じて、他のアプリケーションに構築したのと同じように、コントロールとテストを構築することができます。その種の柔軟性は、そのクローズドで統制された性質に誇りを持っている多くのオーダーメイドのデータソフトウェアから欠けています。
その性質は良い面も悪い面もあり、Excelがスプレッドシート、プランナー、アプリケーション、レポート作成ツール、データ分析ツールとして他のソフトウェアよりも普及しているのはそのためです。
とにかく - ホラーストーリー。まあ、私が考えることができる他の多くのユーザーエラーがあります。誰もがそれを使うとき、そしてオフィスのすべてのコンピュータがそれを持つとき、機能を誤解する可能性はたくさんあります。
私が遭遇した本当のシナリオ:
1。ユーザーは、支払う個人とその月の販売手数料の一覧を持っていました。きれいにするために、送信する前に名前をアルファベット順にソートしました。残念なことに、そのフィルタは金額の欄を強調していませんでした - そして会社のセールスチームは皆、その月のためにお互いにコミッションを得ました。おっと
2。データ抽出を操作しているときに発生するエラーの1つ。詳細のリストは、同社のCRMシステムからITによって作られた抜粋から作成されていました。もちろん、抽出はコンマ区切り値形式でした。Excelでデフォルトで開かれたユーザーは、すべてのアカウントに対して作業を行い、特定のアクションが必要なすべてのアカウントを強調表示し、ITシステムで1つずつ探してエラーを特定しました。その後、彼らは文書をCSV形式で保存して送信し、このアクションを実行できるようにします。
通常のシステム警告の失明により、ユーザーは「すべてのフォーマットは削除されます」という警告を無視し、翌日「問題のあるアカウントはすべて赤で強調表示されます」という電子メールを受信しました。フォーマット あー!
エミールMフリードマンは書いた:PS、私はVisicalcを使用して覚えている。私は…エミルMフリードマン書きました:
PS、私はVisicalcを使ったのを覚えています。意図していなかったものも含めて、私はすでに多くのことにメインフレームSASを使用していましたが、Visicalcは対話的に "what if"シナリオを見るのにとても便利でした。
エミルMフリードマンは書きました:私の「仕事の間」の期間aに戻って...エミルMフリードマン書きました:
私の "仕事の間"の期間に戻って、クライアントは外観に影響を与えるさまざまな入力が他の特定の特性に実質的な影響を及ぼさないことを示す分析を望んでいました。彼は私が速やかにJMP(ver 5?)にインポートして分析したExcelデータファイルを提供しました。
私がもう覚えていない何かが私に彼に1つの特定のエントリーをチェックするように頼ませました。その際、彼は自分の組織内の誰かがExcelファイルの一部をソートしたため、入力と出力の関係が非同期になっていることを発見しました。すべてのデータは正しくても誤った行にあり、入力が実際には出力に目立った影響を及ぼさなかったため、残差プロットと異常値チェックでデータの全体的な破損は明らかになりませんでした。
この場合、私はその時間までに課金していたので、それは私にとってホラーストーリーではありませんでした。
重要なことを別にしておくと、JMPは、誤って選択された部分だけでなく、ファイル全体をソートするように強制するため、そのようなミスを犯させることはありません。
ジョセフは書きました:今では無料を言及するのに最適な時期です...ジョセフ書きました:
今では無料と無料のオプション、特にLibreOfficeとその従兄弟であるApache OpenOffice、Gnumericなどについて言及する絶好の機会ですか?
高価だからといって、仕事を終わらせる必要があるわけではありません(または、ここで取り上げるトピックでは、大々的に失敗します)。