Excel と WPS Spreadsheets の互換性の仕組み:なぜ同じファイルが開けるのか

こんにちは、阿久梨絵です!
WPS Spreadsheetsを使う人なら、一度はこう思ったことがあるはずです。

Excel で作ったファイルが WPS でも開けるのはどうして?

実はこの“互換性”は、単なる「似たソフトだから」ではなく、
ファイル形式・関数体系・計算エンジン・描画ルールなど、複数の層で緻密に設計された仕組みによって成立しています。

この記事では、Excel と WPS Spreadsheets がどのように互換性を実現しているのか、その裏側をわかりやすく解説します。

1. 互換性の土台:ファイル形式(.xls / .xlsx)

互換性の最も大きな要素は ファイル形式です。

Excel の標準形式
.xls(バイナリ形式、Excel 97–2003)
.xlsx(Open XML 形式、Excel 2007〜)

特に .xlsx は Office Open XML(OOXML) という国際標準規格に基づいています。

WPS が互換性を持てる理由
WPS Spreadsheets は、この OOXML の仕様を解析し、
Excel と同じ構造のファイルを読み書きできるように設計されています。

つまり、

セルの値
数式
スタイル
図形
グラフ
ピボットテーブル

といった構造を、Excel と同じルールで保存・解釈しているのです。

2. 関数互換性:同じ関数名・同じ動作を再現する仕組み

Excel の関数体系は世界中で使われているため、
WPS は 関数名・引数・動作 を Excel と合わせることで互換性を確保しています。

WPS が行っていること
Excel の関数仕様を再現
エラー値(#N/A, #VALUE! など)も同じ
関数の優先順位や計算順序も Excel と一致

特に VLOOKUP や IF のような基本関数は完全互換を目指しています。

互換性が難しい領域
Excel 独自の新関数(LAMBDA, LET, 動的配列関数など)
高度な統計関数
日付シリアル値の扱い(1900年問題など)

WPS は Excel の仕様に追随する形でアップデートを続けています。

3. 計算エンジンの互換性:依存関係と再計算ルールの再現

Excel の計算エンジンは 依存関係グラフ(Dependency Graph) を使って再計算を最適化しています。

WPS も同様の仕組みを持ち、
「どのセルがどのセルに依存しているか」を解析して再計算を行います。

互換性のポイント

同じ順序で再計算する
同じ丸めルールを使う
浮動小数点の扱いを Excel に合わせる

これにより、

同じ数式 → 同じ結果

が保証されます。

4. レイアウト互換性:見た目を同じにする技術

互換性は計算だけではありません。
ユーザーが最も気にするのは 「見た目が崩れないか」 です。

WPS が再現している Excel の描画ルール
セル幅・高さ
フォントのレンダリング
罫線の太さ
色の扱い(RGB / テーマカラー)
図形の座標とサイズ
グラフのレイアウト

Excel の描画ルールは非常に複雑ですが、
WPS はこれを独自に解析して再現しています。

5. マクロ(VBA)互換性:ここが最大の違い

互換性の中で最も難しいのが VBA(Visual Basic for Applications) です。

Excel

VBA をネイティブサポート
COM オブジェクトモデルが強力

WPS

VBA の一部をサポート
完全互換ではない
独自のマクロ(WPS マクロ)も存在

業務で VBA を多用している企業では、
Excel → WPS の移行が難しい理由のひとつがここにあります。

6. 互換性の限界:完全一致は不可能

Excel と WPS は高い互換性を持っていますが、完全一致は難しいのが現実です。

理由

Excel の仕様が常に進化している
WPS は逆解析で追随する必要がある
・描画エンジンの違い
マクロの互換性問題
動的配列や LAMBDA などの新機能差

そのため、

ほぼ同じように動くが、完全に同じではない

という評価になります。

まとめ

Excel と WPS Spreadsheets の互換性は、次の複数の層が組み合わさって実現しています。

ファイル形式(OOXML)
関数体系の再現
計算エンジンの互換性
描画ルールの再現
マクロ互換性(部分的)

互換性は“魔法”ではなく、
膨大な仕様の理解と再現によって成り立つ技術の結晶です。
阿久梨絵でした!

上部へスクロール
Verified by MonsterInsights