
Excelの10の問題点
Microsoft Excelは、ビジネスの現場で最も広く使われているツールの一つである。表計算、データ分析、簡易的なデータベースとして、多くの企業が日常業務で活用している。しかし、規制要件が厳格化する現代において、とりわけ21 CFR Part 11などの規制遵守の観点から、Excelには看過できない問題点が存在する。本稿では、監査証跡、セキュリティ、バージョン互換性を中心に、Excelが抱える10の構造的問題点を明らかにする。
本稿はそれを繰り返さず、「10の具体的な問題点」の各論に徹する。各項では「その問題が規制上どう効くか」を一言だけ添え、条文の詳細は姉妹記事へリンクで送る。両記事を併せて読まれたい。
10の問題点――一覧
本稿で扱う10の問題点を先に一覧で示す。「何が起きるか」は現場で観測される現象、「GxPでの帰結」は規制対応上どこに効くかである。
| 問題点 | 何が起きるか | GxPでの帰結 |
|---|---|---|
| 1. 監査証跡の不在 | 誰が・いつ・何を・なぜ変更したかが自動で残らない | §11.10(e) を単体では満たせない。査察で最も指摘されやすい |
| 2. 電子署名機能の欠如 | 署名はファイル単位。特定データ・承認行為への署名ではない | §11.50/§11.70/§11.100(a) の要求と噛み合わない |
| 3. アクセス制御の限界 | ユーザー別の役割権限を設定できない。シート保護は「セキュリティ機能ではない」 | §11.10(d)(g) の権限管理・権限チェックが成立しない |
| 4. バージョン互換性 | 版が違うと関数の計算結果が変わり得る | §11.10(a)「一貫した意図した性能」の再現性が崩れる |
| 5. データ整合性の脆弱性 | 入力規則は数クリックで無効化。加えてExcelの仕様そのものがデータを書き換える | ALCOA+ の Original/Accurate が崩れる。遺伝子記号の改名という実害まで出た |
| 6. 同時編集の制約 | 保存場所と機能の組合せで共同編集が成立しない | 「誰の版が正か」が決まらず、原本性の議論に直結する |
| 7. スケーラビリティの限界 | 1,048,576行・16,384列で頭打ち。大容量で著しく重くなる | 大規模データの長期保管・再解析に耐えない |
| 8. セキュリティ脆弱性 | VBAマクロがマルウェアの運搬手段として使われ続けている | §11.10 が前提とする「閉鎖系」の統制が破られる |
| 9. バックアップとリカバリ | 個人PC・共有ドライブ保管では復旧できない。版数の自動間引きもある | §11.10(c)「保存期間を通じた正確かつ迅速な検索」を担保できない |
| 10. 規制変更への対応の遅さ | 既存ファイル群を遡って直せない。AI機能は再現性を持たない | 規制改正・削除権対応・AI利用でいずれも詰む |
問題点1:監査証跡の不在
何が問題なのか
Excelには、標準機能として包括的な監査証跡(Audit Trail)機能が実装されていない。「誰が、いつ、何を、なぜ変更したか」という記録が自動的に残らないため、データの変更履歴を追跡することが極めて困難である。
具体的な影響
製薬業界などの規制産業では、Part 11により電子記録の完全性が求められる。21 CFR §11.10(e) は、監査証跡を次のように要求している。
(訳:電子記録を作成・変更・削除する操作者の入力および行為の日時を独立して記録する、セキュアで、コンピュータ生成され、タイムスタンプが付された監査証跡を使用すること。記録の変更が、それ以前に記録された情報を覆い隠してはならない。)
出典:21 CFR §11.10(e)(eCFR)
FDAはData Integrity and Compliance With Drug CGMP: Questions and Answers(最終版ガイダンス)において、audit trail を「電子記録の作成・変更・削除に関する一連の出来事を再構成できる、セキュアでコンピュータ生成されたタイムスタンプ付き電子記録」と定義している。「再構成できる」が要点である。ファイルの最終更新日時が分かることと、経緯を再構成できることは別物である。
Excelの「変更履歴の記録」機能は、レガシーの「ブックの共有」に付属する専用機能であり、既定の保持期間は30日、機能をオフにすれば全履歴が消える。記録する側が記録を消せる仕組みは、定義上「セキュア」でも「独立」でもない。この点の詳細と、代替となる「変更内容(Show Changes)」やバージョン履歴の実務的な位置づけは、姉妹記事Excelを使用する場合の管理留意点で整理している。
また、固有のユーザーIDによるアクセス制御がExcel単体では成立しないため、「誰の操作か」を機械的に紐づけられない。監査証跡の各要素(固有のユーザーID、日時のタイムスタンプ、作成・変更・削除の詳細、変更理由)のうち、Excelが自動で残せるものは実質的に存在しない。
査察ではどう指摘されるか――FDA Warning Letterの実例
「アナリストが電子データを自由に変更・削除できる状態だった」という指摘は、抽象論ではなく現実に発出されている。文書番号で特定できる例を挙げる。
(訳:最終製品出荷のための分析データを生成する試験機器に、アクセス制限と十分な統制が欠けていた。例えば、一部の試験室職員が管理者権限を持ち、HPLCファイルを制限なく削除・変更できる状態にあった。また、コンピュータ化システムが生成したデータを削除・変更した個人を追跡する仕組みが存在しなかった。)
出典:FDA Warning Letter, Lex Inc.(MARCS-CMS 656056、2023年8月17日)。21 CFR 211.68(a)(b) 違反として指摘
この事例はHPLCソフトウェアに関するものであってExcelそのものではない。しかし指摘の構造は完全に同じである。すなわち「操作者が自分でデータを消せる」「消した者を追跡できない」――この2点が揃えば、ツールが何であれ同じ指摘を受ける。Excelはこの2点を、既定でどちらも満たしてしまう。
問題点2:電子署名機能の欠如
何が問題なのか
Part 11では、電子記録の承認に電子署名が要求される。§11.100(a) は「各電子署名は一人の個人に固有でなければならず、他者に再使用・再割当てされてはならない」と定め、§11.70 は「電子署名は、通常の手段によって切り離し・複写・転記されて電子記録を偽造できないよう、当該電子記録にリンクされていなければならない」と定めている。
Excelにはデジタル署名機能が存在するが、これはファイル全体に対する署名であって、特定のデータ行や承認プロセスに対する署名ではない。「この検査結果を、この人が、この日時に、この立場で承認した」という粒度の記録にはならない。
実務上の困難
品質管理部門が検査結果を承認する際、Excelでは「承認者名を手入力する」「別途紙の承認書を作成する」といった代替手段に頼らざるを得ない。前者はセルに文字列を書いているだけで、§11.200(a) が要求する二要素の識別要素を伴わない。後者はハイブリッド運用となり、紙と電子のどちらが原本かという別の論点を呼び込む(紙が正か電子が正かを参照)。
Part 11準拠システムでは、文書の編集・レビュー・承認・廃止ごとに電子署名を記録し、ユーザーID・日時・変更タイプを自動記録し、全バージョン履歴を保持することが求められる。Excelにはこれらの機能が標準装備されていない。電子署名に付随する三つの明示事項(署名者の氏名、署名の日時、署名の意味)については、電子署名の3つの明示事項で解説している。
問題点3:アクセス制御の限界
何が問題なのか
Excelのパスワード保護機能は、ファイル全体または特定のシートやセル範囲に対する単純な読み取り・編集制限しか提供しない。ユーザーごとに異なるアクセス権限を詳細に設定することは不可能である。
そもそもシート保護について、マイクロソフト自身が次のように明言している。
(訳:ワークシートレベルの保護は、セキュリティ機能として意図されたものではない。ワークシート内のロックされたセルをユーザーが変更できないようにするだけである。)
出典:Microsoft Support「Protect a worksheet」
提供元が「セキュリティ機能ではない」と述べている仕組みを、査察対応の統制手段として説明するのは無理がある。
セキュリティリスク
例えば、営業部門が顧客データベースをExcelで管理している場合、閲覧権限のみ必要な担当者と編集権限が必要な管理者を明確に区別できない。結果として、過剰な権限付与によるデータ漏洩や誤操作のリスクが増大する。
Part 11準拠システムでは、ユーザーの役割に応じた詳細なアクセス制御(Role-Based Access Control)が必須である。§11.10(d) は「システムへのアクセスを権限のある個人に限定すること」を、§11.10(g) は「権限のある個人のみが、システムを使用し、記録に電子署名し、入出力装置にアクセスし、記録を変更し、または当該作業を実施できることを保証する権限チェックの使用」を求めている。Excelではこのような高度な権限管理は実現できない。
ファイル保管場所の権限とExcelの権限は別物である
SharePointやファイルサーバー側でフォルダ単位のアクセス権を設定することは可能であり、実務上はそれが第一の防衛線になる。ただしそれは「ファイルを開けるか」の制御であって、「開いた後、どのセルを、どの立場で、どこまで操作できるか」の制御ではない。§11.10(g) が求めているのは後者である。この違いを混同した説明が現場では非常に多い。
問題点4:バージョン互換性の問題
何が問題なのか
Excelは頻繁にバージョンアップが行われるが、旧バージョンと新バージョン間で完全な互換性が保証されていない。特に、複雑な数式やマクロ、新機能を使用したファイルは、旧バージョンで正常に動作しない可能性がある。
業務への影響
企業内で複数のExcelバージョンが併存する状況は珍しくない。ある部門で作成したファイルが別の部門で正しく表示されない、数式の計算結果が異なるといった問題が起き、業務効率を低下させる。
Compatibility Versions――マイクロソフト自身が「計算結果は変わり得る」と認めた仕組み
GxPの観点で重要なのは、この問題についてマイクロソフトが公式に対処に乗り出したという事実そのものである。マイクロソフトは2024年12月3日、Microsoft 365 Insider Blog で5つの文字列関数(LEN、MID、SEARCH、FIND、REPLACE)の改善と、Compatibility Versions という仕組みの導入を告知した。
(訳:Compatibility Versions は、ワークブックの設定に応じて更新されるExcel関数の改善を含む。これにより、改善を利用しつつ、ワークブックが期待どおりに動作し続けることを保証できる。)
出典:Microsoft Support「Compatibility Versions」
| 項目 | 確認できた内容 |
|---|---|
| 告知 | 2024年12月3日、Microsoft 365 Insider Blog |
| 対象関数 | LEN、MID、SEARCH、FIND、REPLACE の5つ |
| Version 1 | 従来の計算動作。この機能以前のワークブックはすべて Version 1 として扱われる |
| Version 2 | Unicodeのサロゲートペアに対応。例:LEN("😀") が 2 ではなく 1 を返す |
| 既定の切替 | Current Channel の新規ワークブックが Version 2 になるのは2026年4月。Monthly Enterprise/Semi-Annual Enterprise では Version 2 は利用可能だが推奨は Version 1 のまま |
| 設定場所 | Formulas > Calculation Options > Compatibility Version |
これは、既存ファイルの計算結果を保護しつつ改善を実装するための、周到な設計である。同時に、規制対応の観点からは次の含意を持つ。
同じ数式が、版によって違う値を返し得ることが公式に確定した
LEN() は文字数を数えるだけの、最も単純な関数の一つである。その戻り値が Version 1 と Version 2 で異なる。つまり「同じファイル・同じ数式・同じ入力でも、開いた環境の設定次第で結果が変わる」ケースが公式に存在するということである。
§11.10(a) が求めるのは「正確性、信頼性、一貫した意図した性能、および無効または改変された記録を識別する能力を保証するためのシステムのバリデーション」である。バリデーション済みのスプレッドシートが、ある日Officeの更新で別の値を返す可能性を持つ以上、Compatibility Version の設定値そのものを構成管理の対象に含めなければならない。これはPart 11対応スプレッドシートにおける、新しく生じた管理項目である。
問題点5:データ整合性の脆弱性
何が問題なのか
Excelでは、ユーザーが自由にセルの値を変更、削除、上書きできる。データ入力時のバリデーション(入力規則)は設定可能だが、わずか数クリックで無効化でき、また値の貼り付けによって迂回もできるため、データの整合性を保証する仕組みとしては不十分である。
現場での失敗例
在庫管理システムをExcelで運用している企業では、担当者が誤って数式を削除し、在庫数が実態と乖離するという事態が発生する。このような人為的ミスを防ぐ堅牢な仕組みがExcelには存在しない。Part 11準拠システムでは、データの完全性を保証するため、入力値の検証、データの関係性チェック、変更不可能なロックメカニズムなどが実装されているが、Excelではこれらの機能を確実に実装することができない。
より深刻なのは「Excelの仕様そのものがデータを書き換える」ことである
人為的ミスは、教育と手順で減らすことができる。しかしExcelの設計仕様に起因するデータ破壊は、担当者がどれだけ注意しても防げない。次の4つは、いずれもマイクロソフトの公開文書または査読付き文献で裏が取れる、既知の重大な問題である。
| 仕様 | 何が起きるか | GxPでの帰結 |
|---|---|---|
| オートコレクトによる日付変換 | 12/2 が 2-Dec に、SEPT2 が日付に化ける |
検体ID・ロット番号・遺伝子記号が原本と一致しなくなる(Original/Accurate の毀損) |
| 先頭ゼロの脱落・長い数値の丸め | 00123 → 123、16桁以上の数値は15桁に切り捨てられ指数表記に |
ロット番号・製造番号・バーコードが別の値になる |
| 浮動小数点演算(IEEE 754) | 表示値と内部値が一致しない。有効桁は15桁 | 規格判定の境界値で合否が反転し得る。再計算しても再現しない |
| 1900年うるう年の扱い | Excelは1900年2月29日を存在する日付として扱う | 1900年3月1日より前の日付で WEEKDAY 関数が誤った値を返す |
(1)オートコレクト――世界標準の命名規則が「ツールに合わせて」変更された
Excelは入力された文字列を日付らしいと判断すると、自動的に日付に変換する。マイクロソフト自身が次のように書いている。
(訳:Microsoft Excelは日付を入力しやすくするようあらかじめプログラムされている。例えば
12/2 は 2-Dec に変わる。日付に変えたくないものを入力するときには、これは非常に厄介である。残念ながら、これをオフにする方法はない。)出典:Microsoft Support「Stop automatically changing numbers to dates」
この仕様が、科学の側に実害をもたらした。ゲノム研究では、ヒト遺伝子の公式記号として SEPT2(Septin 2)や MARCH1(Membrane Associated Ring-CH-Type Finger 1)といった名称が使われていた。これらをExcelに貼り付けると日付に変換される。そして変換された状態のまま補足資料として公表されると、下流のソフトウェアはその行を遺伝子として認識できず、黙って捨てる。
被害の規模は査読付き文献で定量されている。
- Ziemann M, Eren Y, El-Osta A.「Gene name errors are widespread in the scientific literature」Genome Biology 17:177(2016年)――主要ゲノム学ジャーナルの補足Excelファイルをプログラムで走査した結果、遺伝子リストを含む論文の約5分の1(19.6%)に、誤変換された遺伝子名が含まれていた。原著
- Abeysooriya M, Soria M, Kasu MS, Ziemann M.「Gene name errors: Lessons not learned」PLOS Computational Biology(2021年7月30日)――2014〜2020年の論文を走査したところ、補足Excel遺伝子リストを含む論文の30.9%(3,436/11,117件)に誤変換が含まれ、2016年の指摘以降も減っていなかった。原著
そして2020年、HGNC(HUGO Gene Nomenclature Committee/ヒト遺伝子命名委員会)は、遺伝子記号そのものを改名した。HGNCが Nature Genetics に公表した命名ガイドラインには、記号を変更すべき場面の一つとして次が明記されている。
(訳:Microsoft Excelで日付に自動変換されてしまう記号は変更された(SEPT1 は現在 SEPTIN1、MARCH1 は現在 MARCHF1 など))
出典:Bruford EA, et al.「Guidelines for human gene nomenclature」Nature Genetics 52(8): 754–758(2020)Box 3 ― PMC7494048/HGNC 公式サイト
これ以上ない実例――ツールに合わせて、世界標準の命名規則の側が変わった
規制対応の議論では、「Excelの弱点は運用でカバーできる」という主張がしばしばなされる。しかしこの事案が示しているのは逆である。世界中の研究者が20年以上にわたり注意を払ってもなお誤りが減らず、最終的に国際的な命名委員会が記号そのものを改名するという選択をした。
GxPの現場に置き換えれば、検体ID・ロット番号・試験項目コードの命名規則を「Excelが壊さないように」設計し直すのと同じことである。それが現実的でないなら、そのデータをExcelで扱わないという判断が要る。
なお、Excel for Microsoft 365 および Excel 2024 以降には 「自動データ変換(Automatic Data Conversion)」 の設定が追加され、①先頭ゼロの除去、②16桁以上の数値の切り捨て、③文字「E」を含む数値の指数表記化、④日付らしい文字列の日付変換――を個別に無効化できるようになった。設定場所は Windows版が File > Options > Data > Automatic Data Conversion、Mac版が Excel > 環境設定 > 編集 > 自動データ変換である(Microsoft Support「Set automatic data conversions」)。ただしこれはユーザー環境側の設定であり、ファイルに埋め込まれるものではない。他者が別の端末で開けば、その端末の設定が適用される。規制対象記録を扱うのであれば、この設定を組織全体で統一し、その状態を記録として残す運用が必要になる。
(2)CSV取り込み時の自動型変換――先頭ゼロと桁落ち
機器から出力されたCSVをExcelで開く、という手順は試験室で日常的に行われている。しかしマイクロソフトは次のように述べている。
(訳:Excelは先頭のゼロを自動的に削除し、大きな数値を
1.23E+15 のような指数表記に変換する。)出典:Microsoft Support「Keep leading zeros and large numbers」
ロット番号 00123 は 123 になり、16桁以上の識別番号は上位15桁だけが残る。しかもこの変換は、開いて保存し直した時点で確定する。元のCSVを上書き保存してしまえば、原本は失われる。「原本はCSVである」という取決めを文書化していない現場では、この時点で ALCOA+ の Original が崩れている。
回避策としてマイクロソフトが案内しているのは、①列をテキスト書式にしてから入力する、②アポストロフィを前置する、③Power Query(データの取得と変換)で列をテキストとして読み込む、④上記の自動データ変換設定を無効化する――である。③のPower Queryによる取り込みが、規制対象データでは最も推奨できる。変換手順自体がクエリとして保存され、再現・レビューが可能になるためである。
(3)浮動小数点演算(IEEE 754)――表示と内部値の乖離
Excelは IEEE 754 仕様に基づいて数値を格納する。マイクロソフトは次のように明記している。
(訳:Microsoft Excelは、浮動小数点数の格納と計算の方法をIEEE 754仕様に基づいて設計されている。……Excelは 1.79769313486232E308 から 2.2250738585072E-308 までの数を格納できるが、精度は15桁の範囲に限られる。)
出典:Microsoft Learn「Floating-point arithmetic may give inaccurate result in Excel」
同ページが挙げている例が示唆的である。=(43.1-43.2)+1 をセルに入力し、表示形式を指数15桁にすると、0.9 ではなく 0.899999999999999 が表示される。マイクロソフトはこれをExcelの欠陥ではなくIEEE 754仕様に厳密に従った結果であると説明しており、他の表計算ソフトでも同様であるとしている。
規格判定への影響は明白である。規格値「0.9%以下」に対して計算結果が 0.899999999999999 であれば適合、0.900000000000001 であれば不適合となる。丸め処理をどこで、何桁で行うかを手順書に定めていなければ、判定は担当者の表示形式設定に依存する。これは §11.10(a) の「一貫した意図した性能」に直接抵触する。対処としてマイクロソフトが挙げているのは ROUND 関数の明示的な使用と、「表示桁数で計算する(Set precision as displayed)」オプションである。ただし後者は「元に戻せず、失われたデータは復元できない」とマイクロソフト自身が警告しているとおり、規制対象記録では極めて危険な設定であり、使用すべきではない。
(4)1900年うるう年バグ
Excelは1900年2月29日を存在する日付として扱う。これはバグではなく、意図的に維持されている仕様である。
(訳:Lotus 1-2-3 が最初にリリースされたとき、実際にはうるう年ではない1900年をうるう年と仮定していた。……Microsoft MultiplanおよびMicrosoft Excelがリリースされたときも、1900年をうるう年と仮定した。この仮定により、Lotus 1-2-3 と同じシリアル日付システムを使用できるようになった。)
出典:Microsoft Learn「Excel incorrectly assumes that the year 1900 is a leap year」
マイクロソフトはこれを修正しない理由として、修正すれば既存の全ワークシートの日付が1日ずれること、WEEKDAY 関数の戻り値が変わり数式が誤動作すること、他プログラムとのシリアル日付互換性が失われることを挙げている。修正しない場合に生じる問題は「1900年3月1日より前の日付について WEEKDAY 関数が誤った値を返す」の一点のみであり、1900年以外のうるう年(2100年など、100で割り切れて400で割り切れない年)は正しく扱われる。
実務上、GxP記録で1900年2月以前の日付を扱うことはまずない。したがってこの問題の実害は限定的である。しかし本稿でこれを挙げるのには理由がある。バリデーション時に「日付計算の境界値テスト」を設計する際、Excelの日付シリアル値がグレゴリオ暦と1日ずれる区間が存在することを知らずに期待値を組むと、テストそのものが誤る。ツールの仕様を知らないままバリデーションを書くことの危険性を示す好例である。
問題点6:同時編集の制約
何が問題なのか
Excel Onlineや共同編集機能により同時編集は可能になったものの、デスクトップ版Excelでローカルに保存されたファイルは、基本的に一人のユーザーしか編集できない。共同編集が成立するには、ファイル形式と保管場所の両方の条件を満たす必要がある。
| 条件 | マイクロソフトが示す要件 |
|---|---|
| ファイル形式 | .xlsx/.xlsm/.xlsb。Strict Open XML Spreadsheet形式は非対応 |
| 保管場所 | OneDrive、OneDrive for Business、または SharePoint Online のライブラリ |
| 成立しない場合 | SharePoint On-Premises(自社ホスティング)は共同編集に非対応。共同編集をサポートしないバージョンのExcelで誰かが開くと、全員に「ファイルがロックされています」エラーが出る |
出典:Microsoft Support「Collaborate on Excel workbooks at the same time with co-authoring」
.xlsx/.xlsm/.xlsb の3形式を等しく共同編集の対象として挙げている。実際の分かれ目はファイル形式ではなく、保管場所(クラウドかオンプレミス/ローカルか)とExcelのバージョンである。
コラボレーションの障壁
複数の部門が関与するプロジェクトで、予算管理表をExcelで作成する場合、条件を満たさなければ各部門が順番にファイルを編集する必要がある。これはリアルタイムのコラボレーションを阻害し、意思決定のスピードを遅らせる要因となる。
OneDrive/SharePointによる改善と、GxPでの読み替え
OneDriveまたはSharePoint Onlineにファイルを保存することで、リアルタイムの同時編集が可能になり、この問題は大幅に軽減される。複数のユーザーが同時に編集でき、他のユーザーのセル選択が異なる色で表示され、@メンション機能による通知・コメントも利用できる。
ただしローカルパス(C:\)に保存されたファイルや SharePoint On-Premises 環境では共同編集は利用できないため、組織としての統一的な運用方針が必要である。
GxPでは「同時編集できない」ことより「版が分岐する」ことが問題である
共同編集の可否は、一見すると生産性の話に見える。しかし規制対応の観点では別の意味を持つ。共同編集ができない環境では、「試験結果_最終.xlsx」「試験結果_最終_修正版.xlsx」「試験結果_最終_修正版2.xlsx」という分岐が必然的に発生する。このとき「どれが原本か」は、ファイル名の日本語と担当者の記憶にしか存在しない。
原本の特定は Part 11 と ER/ES 指針の根幹である。この論点は紙が正か電子が正かおよびExcelを使用する場合の管理留意点で詳しく扱っている。
問題点7:スケーラビリティの限界
何が問題なのか
Excelには行数と列数の上限が存在する。マイクロソフトの公式仕様は次のとおりである。
| 項目 | 上限 | 備考 |
|---|---|---|
| ワークシートの行数 | 1,048,576 行 | 220 |
| ワークシートの列数 | 16,384 列(最終列は XFD) | 214 |
| 1セルの文字数 | 32,767 文字 | |
| ブックのサイズ | 32ビット版は仮想アドレス空間2GBの制約を受ける。64ビット版は「利用可能なメモリとシステムリソースによってのみ制限される」 | ハード上限の記載なし |
これは Excel 2007 以降の全バージョン(Microsoft 365 を含む)に共通する技術的制約である。また、ファイルサイズが大きくなると動作が極端に遅くなり、最悪の場合クラッシュする。大量データの処理には本質的に不向きである。
参考として、Googleスプレッドシートの上限は1,000万セルまたは18,278列(列 ZZZ)である(Google ドライブ ヘルプ「Google ドライブに保存できるファイル」)。列数だけを見ればExcelより多いが、セル総数に上限がある点はExcelと異なる。いずれにせよ、「表計算ソフトの上限を意識しなければならない規模のデータ」は、すでに表計算ソフトで扱うべき規模を超えていると考えるのが健全である。
ビッグデータ時代の課題
IoTセンサーから収集される大量のデータや、顧客の行動ログなど、現代のビジネスで扱うデータ量は急速に増加している。Excelでこれらを扱おうとすると、パフォーマンスの問題に直面し、分析作業そのものが困難になる。
規制産業では、臨床試験データや製造記録など、数十万件規模のデータを長期間保管・分析する必要があるが、Excelではこのような大規模データの管理は現実的ではない。加えて、保管期間の長さがこの問題を増幅する。数十万行のブックを10年後に開いて、当時と同じ計算結果を再現できるかという問いには、別の困難が伴う(電子記録の長期保存が困難な理由を参照)。
▲【動画】データインテグリティの誤解と要点 第1章 なぜデータインテグリティが重要か(株式会社イーコンプライアンス)
問題点8:セキュリティ脆弱性への露出
何が問題なのか
Excelファイルに埋め込まれたマクロ(VBA)は、マルウェアの運搬手段として長く使われてきた。また、ファイルの暗号化機能も、パスワードが短く単純な場合には解読される可能性がある。
サイバー攻撃のリスク
Excelファイルを起点とする標的型攻撃は、現在も継続して観測されている。商用セキュリティベンダーである Fortinet の FortiGuard Labs は2024年6月、ウクライナを標的とした攻撃で、VBAマクロを埋め込んだExcelファイルが Cobalt Strike の展開に用いられたとする調査報告「Menace Unleashed: Excel File Deploys Cobalt Strike at Ukraine」を公表している(FortiGuard Labs)。
報告によれば、この攻撃はウクライナ語で作成された軍事予算関連を装うExcelファイルを用い、利用者にマクロの有効化を促す社会工学的手法を伴っていた。多段階のマルウェア配信によって最終的に Cobalt Strike のペイロードを展開し、C2サーバーと通信を確立する。
セキュリティ対応の進展――インターネット由来マクロの既定ブロック
マイクロソフトは、Windows版のAccess、Excel、PowerPoint、Visio、Word において、インターネット由来のファイルに含まれるVBAマクロを既定でブロックする変更を実施した。この変更の適用時期は更新チャネルごとに異なる。
| 更新チャネル | バージョン | 適用開始 |
|---|---|---|
| Current Channel (Preview) | Version 2203 | 2022年4月12日 展開開始 |
| Current Channel | Version 2206 | 2022年7月27日 展開開始 |
| Monthly Enterprise Channel | Version 2208 | 2022年10月11日 |
| Semi-Annual Enterprise Channel (Preview) | Version 2208 | 2022年10月11日 |
| Semi-Annual Enterprise Channel | Version 2208 | 2023年1月10日 |
出典:Microsoft Learn「Macros from the internet are blocked by default in Office」。同ページは Publisher(2023年2月14日)と Project(2024年8月13日)の適用時期も別表で示している
この機能は Mark of the Web(MOTW) という技術に基づいている。Windowsは、インターネットゾーンまたは制限付きサイトゾーンから取得したファイルに ZoneId 属性を付与する。ZoneId=3(インターネットゾーン)のファイルはマクロがブロックされ、利用者には「Enable content(コンテンツの有効化)」ボタンを持たない SECURITY RISK バナーが表示される。ZoneId=2(信頼済みサイト)であればブロックされない。
ただし次の点に注意が要る。
- Windows以外は対象外。Mac版Office、Android/iOS版Office、Office on the web には、この変更は適用されない
- MOTWはNTFS上のファイルにのみ付与される。FAT32でフォーマットされたデバイスに保存されたファイルには付かない
- 既に「Enable content」を押したことがあるファイルは、信頼済みドキュメントとして扱われ、変更後もマクロが動く
- OneDrive/SharePointから「デスクトップアプリで開く」を選んだファイル、OneDrive同期クライアントがダウンロードしたファイルには MOTW が付かない
つまり「2022年7月以降はマクロが安全になった」という理解は正しくない。既定値が変わり、リスクが大幅に軽減されたことは事実だが、利用者が「Enable content」に相当する操作を行う社会工学的手法の有効性は依然として高い。過信は禁物である。
暗号化の強度と、その限界
暗号化そのものは強固である。マイクロソフトによれば、Office 2016 以降で Open XML 形式(.xlsx 等)を既定値で暗号化した場合、AES(256ビット鍵長)、SHA-2、CBC が使用される。またAgile Encryptionの仕様上、パスワードのハッシュ化は spinCount 回(既定 100,000 回)反復される。
一方、Office 97-2003 のバイナリ形式(.xls 等)は RC4 でしか暗号化できない。マイクロソフトは「RC4 は推奨されない」と明記し、Open XML 形式での保存を推奨している(Microsoft Learn「Cryptography and encryption in Office 2016」)。古い .xls ファイルが長期保管庫に残っている組織は、この点を棚卸ししたほうがよい。
ただし暗号アルゴリズムが強固であっても、パスワードが短く単純であれば総当たり攻撃の対象になる。強力なパスワード(12文字以上、大小英字・数字・記号の組合せ)の使用と、そもそもファイルパスワードに依存しない設計(保管場所側のアクセス制御と暗号化)が本筋である。
問題点9:バックアップとリカバリの困難さ
何が問題なのか
Excelファイルは通常、個人のPCやネットワークドライブに保存される。組織的なバックアップ体制が整っていない場合、ファイルの紛失や破損時に復旧が困難である。また、特定時点の状態に戻す「ポイントインタイム・リカバリ」も容易ではない。
データ損失のリスク
重要な財務データをExcelで管理している企業で、担当者のPCが故障し、過去数ヶ月分のデータが失われるという事態が実際に発生している。規制産業では、データの完全性と追跡可能性が求められるため、このようなバックアップ体制の脆弱性は重大なコンプライアンスリスクとなる。§11.10(c) は「保存期間を通じて、記録を正確かつ迅速に検索できるよう保護すること」を求めている。
OneDrive/SharePointによる改善
この問題については、OneDriveまたはSharePoint Onlineへの移行により大幅に改善される。具体的には以下の機能が利用可能になる。
- バージョン履歴:ファイルの版が自動保存され、過去の版に復元できる。保持ポリシーは組織の設定に依存する
- AutoSave(自動保存):マイクロソフトは「AutoSave saves your file automatically, every few seconds, as you work(AutoSaveは作業中、数秒ごとにファイルを自動保存する)」と記載している。ただし利用には Microsoft 365 サブスクリプションと、OneDrive/OneDrive for Business/SharePoint Online への保存が必須である(Microsoft Support「What is AutoSave?」)
- ポイントインタイム・リカバリ:バージョン履歴に残っている範囲で、過去時点の状態に復元できる
.xls 等)、ローカルドライブや SharePoint On-Premises への保存、他のOfficeドキュメントへの埋め込みに加えて、「ブックの共有」機能の使用、パスワードによる暗号化、アクセス制限が設定されている場合にもAutoSaveが無効になると記載している。すなわち「ファイルにパスワードを掛ける」という統制と、「自動保存で失わない」という統制は、Excelでは同時に成立しない。統制手段どうしが排他になるという、設計上の制約である。
バージョン履歴は「永遠に残る」ものではない――自動間引きの実際
ここが最も誤解されやすい点である。SharePoint/OneDrive のバージョン履歴には上限設定があり、その既定が「自動(Automatic)」である場合、古い版は機械的に間引かれる。マイクロソフトはそのアルゴリズムを明示している。
| 経過期間 | 保持される版 |
|---|---|
| 最初の30日間 | 500件の上限内ですべての版 |
| 30〜60日 | 毎時の版(各正時に作成されたもの)のみ |
| 60〜180日 | 毎日の版(各日の最初のもの)のみ |
| 180日以降 | 毎週の版(各週の最初のもの)のみ。500件の上限に達するまで無期限 |
出典:Microsoft Learn「Plan version storage for document libraries」。同ページは自動設定により6か月でバージョンストレージが約94〜96%削減されるとしている
さらに重要な記載がある。同ドキュメントは、ライブラリに設定された上限を超えて削除された版は、通常のごみ箱を経由せず完全に削除され、ごみ箱から復元できないと明記している。管理者がスケジュールした版の削除ジョブについても同様である。
「クラウドに置いたから履歴は安全」は成り立たない
GxP記録の保存期間は数年から十数年に及ぶ。一方、自動設定のバージョン履歴は180日を超えると週1件まで間引かれる。「いつでも過去の状態に戻せる」という前提でExcel運用を設計していると、査察で照会された時点の版がすでに存在しない、という事態が起こり得る。
救済手段は存在する。同ドキュメントは、保持ポリシー(retention policy)またはeDiscovery ホールドの対象となっている項目については、ライブラリのバージョン上限が無視されると述べている。また「レコードとしてマークされた」項目は版の削除自体がブロックされる。規制対象記録を扱うライブラリには、Microsoft Purview の保持ポリシーを明示的に適用すること。これはIT部門の設定作業ではなく、品質保証部門が要求すべき統制項目である。
問題点10:規制変更への対応の遅さ
何が問題なのか
規制要件は時代とともに変化する。しかし、Excelベースのシステムでは、新たな規制要件に対応するためにファイル構造や運用ルールを変更することが困難である。特に、過去に作成された大量のファイルを遡って修正することは現実的ではない。
専用システムであれば、要求の変更はデータモデルとロジックの改修として一元的に実施でき、既存データもマイグレーションの対象にできる。Excelでは「改修対象」がファイル単位で数百・数千に散在している。これが本質的な差である。
コンプライアンスリスク
個人情報を含むExcelファイルは、その典型例である。EU一般データ保護規則(GDPR、規則(EU) 2016/679)第17条は、データ主体が管理者に対して自己に関する個人データの消去を求める権利(いわゆる「忘れられる権利」)を定めている。また第30条は、処理活動の記録を保持する義務を定めている。
顧客データベースをExcelで管理している場合、特定の個人の全データを完全に削除し、その削除記録を保持することは、複数のファイルに分散したデータを手作業で探す必要があり、実務上きわめて困難である。さらに厄介なのは、削除したこと自体を証明できない点である。バージョン履歴やバックアップに残った旧版に当該個人のデータが残っていれば、削除は完了していない。
AI機能の追加は、この問題をさらに難しくする――COPILOT関数の例
規制変更への追随という論点は、近年もう一つの様相を帯びている。Excel自体に、再現性のない機能が追加されつつあるということである。
セルに自然言語のプロンプトを書いてAI処理を行う COPILOT 関数について、マイクロソフトは公式ドキュメントで次の点を明記している。
| マイクロソフトの記載 | GxP/内部統制上の意味 |
|---|---|
| 「2026年9月14日以降、COPILOT関数は利用できなくなる」(Copilot in Excel へ移行するよう案内) | この関数を組み込んだブックは、その時点で動かなくなる。長期保存記録の再現性が失われる |
| 「AIを使用しており、誤った応答を返すことがある」 | 提供元自身が正確性を保証していない |
| 正確性が要る用途、法的・規制上の意味を持つ用途、財務報告に用いないよう案内 | GxP記録・内部統制の証跡には、提供元の案内に反して使うことになる |
| 「同じ引数であっても、数式の結果が時間の経過とともに変わることがある」 | 再現性がない。§11.10(a) の「一貫した意図した性能」を満たし得ない |
再現性のない関数は、定義上バリデーションできない
バリデーションとは「意図した用途に対して、一貫して所定の性能を発揮することを、文書化された証拠により保証する」ことである。同じ入力から同じ出力が得られないのであれば、そもそも合否判定の対象にならない。OQ/PQを何度実施しても、次回同じ結果になる保証がない。
加えて、判断根拠を説明できないという問題がある。査察で「なぜこの値になったのか」を問われたときに答えられない。AIの提案を業務に用いる場合は、必ず人間が検証・承認するプロセスを設け、その検証結果を記録に残すこと。最終的な責任は常に人間が負う。
この論点の詳細は、姉妹記事Excelを使用する場合の管理留意点の「AIとの統合による新たな可能性と、その注意点」で扱っている。
そしてより広い含意はこうである。Excelは今後も機能が追加され、削除され、既定値が変わり続ける。Compatibility Versions(問題点4)、マクロの既定ブロック(問題点8)、自動データ変換設定(問題点5)、COPILOT関数の提供終了(問題点10)――本稿で扱っただけでも、この数年で4件の仕様変更があった。汎用の生産性ツールを規制対象記録の器として使うということは、提供元の製品ロードマップに自社のコンプライアンスを預けるということである。
解決への道筋
専用システムへの移行検討
これらの問題点を根本的に解決するには、規制要件に対応した専用のデータ管理システムやエンタープライズ向けアプリケーションへの移行を検討すべきである。LIMS(Laboratory Information Management System)、QMS(Quality Management System)、ERP(Enterprise Resource Planning)などが選択肢となる。これらのシステムでは、以下のような機能が標準実装されている。
- 包括的な監査証跡(誰が、いつ、何を、なぜ変更したかの完全な記録)
- 規制要件に準拠した電子署名機能
- ユーザーの役割に応じた詳細なアクセス制御
- データ整合性を保証する検証ルール
- 自動バックアップとポイントインタイム・リカバリ
- 規制変更に対応可能な柔軟なシステム設計
段階的なアプローチ
いきなり全てをExcelから移行するのではなく、まず規制リスクが最も高い領域から優先的に対応する。例えば、Part 11への準拠が必須な製造記録や品質データから着手し、成功事例を積み重ねながら展開範囲を広げていく。具体的には、以下のような優先順位付けが考えられる。
- 最優先(High Risk)FDA査察対象の電子記録――製造記録、品質試験データ、臨床試験データ。監査証跡と電子署名が制度上の必須要件となる領域である
- 優先(Medium Risk)個人情報を含むデータベース――顧客情報、従業員情報。削除権への対応と処理記録の保持が求められる
- 検討(Low Risk)定型的な集計や一時的な分析。ここまでを一律に移行対象とすると、コストに対して得られる統制が見合わない
このように、リスクベースアプローチで段階的に移行することで、組織への影響を最小化しながら確実にコンプライアンスを向上させることができる。移行の判断基準(「いつExcelをやめるべきか」)は、姉妹記事Excelを使用する場合の管理留意点で具体化している。
ハイブリッド戦略――使い分けの対比
全てをExcelから置き換える必要はない。定型的な集計や一時的な分析など、Excelが得意とする用途では引き続き活用し、監査証跡やセキュリティが重要な用途では専用システムを使用するというハイブリッドアプローチも現実的である。判断の分かれ目は次のとおりである。
| 観点 | Excelを継続利用できる用途 | 専用システムへの移行が必要な用途 |
|---|---|---|
| 典型例 | アドホック分析・探索的データ分析/プレゼンテーション用の図表作成/個人的なメモやスケジュール管理/一時的なデータ集計 | 規制当局への提出データ/長期保管が必要な記録/複数部門で共有する重要データ/監査証跡が必要な業務プロセス |
| 記録としての性格 | 結果が他の正式記録から再生成できる。捨ててもよい中間生成物 | それ自体が原本。失えば再現できない |
| 変更履歴 | 追跡不要。誰がいつ直したかを問われない | 「誰が・いつ・何を・なぜ」の記録が制度上必須 |
| 承認行為 | 承認という概念がない、または口頭・メールで足りる | 署名者・日時・署名の意味を記録に残す必要がある |
| 保存期間 | 数日〜数か月。用が済めば破棄する | 数年〜十数年。法定保存期間の対象 |
| 閲覧・編集の範囲 | 作成者本人か、ごく少人数 | 複数部門・複数拠点。役割ごとに権限を分ける必要がある |
| 誤りが生じたときの影響 | やり直せばよい | 製品品質・患者安全・当局報告に及ぶ |
| 査察での扱い | 提示を求められない | 提示を求められる。メタデータごと出せなければならない |
判断に迷ったら――「印刷して綴じれば済むか」を問う
実務でよく使える簡便な判定法がある。「そのExcelファイルは、印刷して綴じれば記録として成立するか」を問うことである。
成立するなら(=計算式も並べ替えもフィルタも要らず、印字された値だけで完結するなら)、それは static record に近く、Excelでの運用に一定の余地がある。成立しないなら(=数式の中身、非表示行、フィルタ条件、リンク先の値がなければ意味を持たないなら)、それは dynamic record であり、紙に落とした瞬間に情報が失われる。その場合、Excelファイルそのものを電子原本として管理する体制が要る。
この判定の理屈はなぜプリントアウトは信頼できないのかで、static/dynamic record の定義はExcelを使用する場合の管理留意点で扱っている。
まとめ
Excelは優れたツールであり、その柔軟性と使いやすさは多くのビジネスパーソンに支持されている。しかし、規制遵守が求められる環境や、データの完全性・セキュリティが重要な用途においては、従来型Excelの設計上の限界が存在する。
本稿で見てきたとおり、その限界には二つの層がある。第一に、監査証跡・電子署名・アクセス制御といった「規制が要求する機能が備わっていない」という層。これは運用と補完的な仕組みでかなりの部分を埋められる。第二に、オートコレクト・浮動小数点・自動型変換・関数の版差といった「Excelの仕様そのものがデータを書き換える」という層。こちらは運用では埋まらない。HGNCが遺伝子記号を改名したという事実は、後者の層の重さを何より雄弁に物語っている。
一方で、マイクロソフトも継続的な改善を進めている。2022年7月のマクロ既定ブロック、2024年12月に告知された Compatibility Versions、自動データ変換設定の追加、OneDrive/SharePointによるバージョン履歴とAutoSave――いずれも実在する改善である。ただしそれぞれに、本稿で見たとおりの適用条件と例外がある。「対策が入ったから安全になった」で止めず、自社の環境で条件を満たしているかを確認することが要る。
Excelの問題点と改善動向の両方を正しく理解し、適切な用途と不適切な用途を見極めることが、コンプライアンスリスクを低減し、業務効率を向上させる第一歩となる。重要なのは、Excelを全面的に否定するのではなく、その限界を認識した上で、組織全体として最適なツールの組み合わせを選択していくことである。技術の進化を味方につけ、より信頼性の高いデータ管理体制を構築していくことが、これからの時代を生き抜く鍵となるであろう。
この記事の要点
- 監査証跡の不在が最大の問題である。§11.10(e) は「セキュアで、コンピュータ生成され、タイムスタンプ付きで、独立して記録する」監査証跡を要求する。Excelの「変更履歴の記録」は記録者自身が消せるため、この4条件のいずれも満たさない
- 「アナリストがデータを自由に消せる」は実在する指摘である。FDA Warning Letter(Lex Inc.、MARCS-CMS 656056、2023年8月17日)は、管理者権限による削除・変更が制限されず、削除者を追跡できなかったことを 21 CFR 211.68 違反として指摘している
- Excelの仕様そのものがデータを壊す。オートコレクトによる日付変換、先頭ゼロの脱落、IEEE 754 の15桁精度、1900年うるう年。マイクロソフトは日付変換について「これをオフにする方法はない」と長く記載してきた(現在は自動データ変換設定で個別に無効化可能)
- 2020年、HGNCはヒト遺伝子の記号そのものを改名した。
SEPT1→SEPTIN1、MARCH1→MARCHF1。Excelが日付に変換してしまうためである。ツールに合わせて世界標準の命名規則の側が変わった実例である - 同じ数式が版によって違う値を返し得ることが公式に確定した。Compatibility Versions により
LEN("😀")は Version 1 で 2、Version 2 で 1 を返す。Current Channel の新規ブックが Version 2 になるのは2026年4月。この設定値を構成管理の対象に含めること - クラウドのバージョン履歴は永遠ではない。自動設定では30日を過ぎると毎時、60日で毎日、180日で毎週の版だけに間引かれ、上限超過分はごみ箱を経由せず完全削除される。規制対象記録には Purview の保持ポリシーを明示的に適用すること
- パスワード保護とAutoSaveは両立しない。暗号化されたブックではAutoSaveが無効になる。統制手段どうしが排他になる設計上の制約である
- COPILOT関数は規制対象業務に使えない。マイクロソフト自身が「同じ引数でも結果が時間とともに変わり得る」「法的・規制上の意味を持つ用途に使わないよう」案内しており、2026年9月14日で提供終了となる。再現性がない以上、§11.10(a) を満たし得ない
- 使い分けの判定は「印刷して綴じれば済むか」で行う。済まないなら dynamic record であり、電子原本として管理する体制が要る
出典・参考資料
- 21 CFR Part 11(Electronic Records; Electronic Signatures)― eCFR/§11.10 Controls for closed systems
- FDA「Data Integrity and Compliance With Drug CGMP: Questions and Answers ― Guidance for Industry」― fda.gov
- FDA Warning Letter, Lex Inc.(MARCS-CMS 656056、2023年8月17日)― fda.gov
- Microsoft Support「Excel specifications and limits」― support.microsoft.com
- Microsoft Support「Compatibility Versions」― support.microsoft.com
- Microsoft 365 Insider Blog「Improving five Excel text functions: LEN, MID, SEARCH, FIND, and REPLACE + Compatibility Versions」(2024年12月3日)― techcommunity.microsoft.com
- Microsoft Support「Stop automatically changing numbers to dates」― support.microsoft.com
- Microsoft Support「Set automatic data conversions」― support.microsoft.com
- Microsoft Support「Keep leading zeros and large numbers」― support.microsoft.com
- Microsoft Learn「Floating-point arithmetic may give inaccurate result in Excel」― learn.microsoft.com
- Microsoft Learn「Excel incorrectly assumes that the year 1900 is a leap year」― learn.microsoft.com
- Microsoft Support「Protect a worksheet」― support.microsoft.com
- Microsoft Support「Collaborate on Excel workbooks at the same time with co-authoring」― support.microsoft.com
- Microsoft Learn「Macros from the internet are blocked by default in Office」― learn.microsoft.com
- Microsoft Learn「Cryptography and encryption in Office 2016」― learn.microsoft.com
- Microsoft Learn「Plan version storage for document libraries」― learn.microsoft.com
- Microsoft Learn「Version history limits for document library and OneDrive overview」― learn.microsoft.com
- Microsoft Support「What is AutoSave?」― support.microsoft.com
- Microsoft Support「COPILOT function」― support.microsoft.com
- Bruford EA, et al.「Guidelines for human gene nomenclature」Nature Genetics 52(8): 754–758(2020)― PMC7494048/HGNC(genenames.org)
- Ziemann M, Eren Y, El-Osta A.「Gene name errors are widespread in the scientific literature」Genome Biology 17:177(2016)― genomebiology.biomedcentral.com
- Abeysooriya M, Soria M, Kasu MS, Ziemann M.「Gene name errors: Lessons not learned」PLOS Computational Biology(2021)― journals.plos.org
- Google ドライブ ヘルプ「Google ドライブに保存できるファイル」(Googleスプレッドシートのセル数・列数上限)― support.google.com
- FortiGuard Labs「Menace Unleashed: Excel File Deploys Cobalt Strike at Ukraine」(2024年6月・商用ベンダーの調査報告)― fortinet.com
- REGULATION (EU) 2016/679(GDPR)― EUR-Lex
関連記事
- Excelを使用する場合の管理留意点(本稿の姉妹記事。§11.10各号×Excelの対応表、ALCOA+、バリデーション、移行の判断基準)
- なぜプリントアウトは信頼できないのか(static/dynamic record と、印刷で失われるもの)
- 紙が正か電子が正か(原本の特定)
- ハイブリッドシステムとは(紙と電子の併用運用)
- タイプライターエクスキューズとは(Part 11 が生まれた経緯)
- 電子記録の長期保存が困難な理由
- タイムカプセルアプローチとは
- ER/ES指針査察のいま――監査証跡
- データインテグリティ保証の3要素
- メタデータとは何か
- 電子署名の3つの明示事項
- Able Laboratories社倒産事件