このページでは方眼Diffの機能の詳細を紹介します。
機能概要
出来ること
- Excelシート同士を比較し、内容の異なるセルとセルコメントを検出できます。
- セルの内容が数式の場合、数式文字列/計算結果の値のどちらで比較を行うかを指定できます。
- 行や列の挿入や削除によるギャップを自動で検出できます。
- 2つのExcelファイルを指定することで、それらに含まれる名前の似たシート同士を自動でマッチングし、複数のシートを一度に比較することができます。
- .xls/.xlsx/.xlsm形式のExcelファイルのワークシートに対応しています。異なる形式のExcelファイル同士を比較することもできます。
- 比較結果のレポートは、次の2つの形式を選べます。
- 差分内容を記したテキストファイルを表示
- 比較対象Excelファイルの差分箇所に色を付けて表示(コピーしたものに対して色を付けます。元のExcelファイル自体は更新しません。)
- 挿入/削除された行や列は薄赤色に着色します。
- 内容の異なるセルは黄色に着色します。
出来ないこと
- 比較できるのはセルとセルコメントの中に記載された文字列のみです。それ以外の一切、例えばフォントの種類、セル背景色、オブジェクトなどを比較することはできません。
- .xlsb 形式のExcelファイルには対応していません。また、ワークシート以外のシート(グラフシートやダイアログシートなど)には対応していません。
- 方眼Diffはシンプルで使いやすいことを最重視して設計されています。そのため、比較条件やレポート形式を細かく指定することはできません。
- Excelは高機能なアプリケーションであり、世界中で様々な用途や方法で利用されています。方眼Diffは可能な限り正しく機能することを目指していますが、対応できない場合があります。
動作の仕組み
実行結果の保存
方眼Diffは指定された2つのExcelファイルを読み込み、結果レポートを出力します。
結果レポートは「作業用フォルダ」に出力されます。「作業用フォルダ」のデフォルト値はお使いのPCによって異なり、Windows 10の場合は通常は「C:\Users\username\xyz.hotchpotch.hogandiff\yyyymmdd-hhmmss-SSS」となります。
「作業用フォルダ」の場所は、画面下部の「変更…」ボタンから変更することができます。
v0.7.9まで、「作業用フォルダ」はシステムの一時ファイル領域(Windows10の場合は通常は「C:\Users\username\AppData\Local\Temp\xyz.hotchpotch.hogandiff\yyyymmdd-hhmmss-SSS」)であり、これを変更することはできませんでした。 v0.8.0から、「作業用フォルダ」が変更可能となり、デフォルト値はシステムのユーザーホームディレクトリ(Windows10の場合は通常は「C:\Users\username\xyz.hotchpotch.hogandiff\yyyymmdd-hhmmss-SSS」)に変更されました。
この作業用フォルダに次のファイルが出力されます。
- 元の比較対象Excelファイルをコピーし、差分箇所に色を付けたもの。元のExcelファイルを直接更新することはありません。
- 差分内容が記載されたテキスト
元の比較対象Excelファイルにパスワードが設定されている場合、パスワードが解除された状態で作業用フォルダに保存されます。
セキュリティ上問題がある場合は、ご自身で作業用フォルダから比較結果Excelファイルを削除してください。
レポートオプションにチェックを付けると、お使いのPCにインストールされているアプリケーション、通常はMicrosoft Excelやメモ帳を利用してこれらのファイルが表示されます。これらのアプリケーションがインストールされていなかったり、拡張子に対する登録がなされていなかったりする場合は、上記のファイルは出力されますが、表示することはできません。
「作業用フォルダを表示する」ボタンをクリックすることで、作業用フォルダを表示することができます。不要になった結果ファイルや作業用フォルダは削除して問題ありません。「古い作業用フォルダを削除する」ボタンをクリックすることで、一括で削除することができます。
オプション設定の保存
方眼Diffの各種設定内容は設定ファイルに保存され、次回起動時に保存した内容でアプリケーションが起動します。
設定ファイルは次の場所に保存されます。
- Windowsの場合
- <ユーザーホーム>\AppData\Roaming\xyz.hotchpotch.hogandiff\hogandiff.properties
- macOSの場合
- <ユーザーホーム>/xyz.hotchpotch.hogandiff/hogandiff.properties
このファイルを削除すると、デフォルトの設定でアプリケーションが起動します。
なお、次の情報は設定ファイルには保存されません。
- 比較メニュー
- 比較対象のブックとシート
Java実行環境について
※このセクションの内容はやや技術的であるため、興味のない方は読み飛ばしてください。
方眼Diff は Java ベースのプログラムであり、実行するためには Java 実行環境(JRE : Java Runtime Environment)のバージョン18以上が必要です。
従来のJavaアプリケーションでは、アプリケーション本体とは別に、あらかじめお使いのPCにJava実行環境をインストールしておく必要がありました。方眼Diffではこの手間を省くために、zipパッケージの中に最小構成のJava実行環境を同梱して配布しています。このため、zipファイルを解凍するだけで方眼Diffを利用することができます。
VMオプションの指定について
※このセクションの内容は非常に専門的であるため、興味のない方は読み飛ばしてください。
「方眼Diff.exe」と同じフォルダに格納されている「方眼Diff.exe.vmoptions」ファイルに記述することで、JVMオプションを指定することができます。
初期設定では次の内容が記述されています。
-Xms256m -Xmx2048m
上記のように、改行区切りでオプションを追加することができます。
「方眼Diff.exe」がメモリ不足で終了してしまう場合は、「-Xmx」の値を大きくすることで改善される可能性があります。
ただし、極めて専門的な知識を必要としますので、よく分からない場合は初期設定のままにすることをお勧めします。内容を変更する場合は自己責任でご実施ください。
画面各部の説明


比較メニュー
- 「ブック同士を比較する」
- 2つのExcelファイルを比較します。
- 名前が似ているシート同士を自動でマッチングして比較します。
- 「シート同士を比較する」
- 2つのExcelシート同士を比較します。
- 同じブックの中のシート同士でも別のブックに属するシート同士でも比較することができます。
比較対象の指定
- Excelブックの指定
- ファイル選択ダイアログまたはファイルのドラッグ&ドロップで比較対象のExcelブックを指定します。
- .xlsx/.xlsm/.xls 形式のブックを指定することができます。
- 2つのブックの形式が異なっていても構いません。
- シート名の指定
- 比較メニューで「シート同士を比較する」を選択した場合は対象のシートを選択します。
実行エリア
- 「実行」ボタン
- 比較処理を実行します。
- 比較対象のExcelブックやシートを指定することで、ボタンが有効になります。
- メッセージ表示エリア
- 比較処理の実行状況が表示されます。
オプションの指定
比較オプション
- 「行の挿入/削除を考慮する」
- このオプションをOFFにした場合は、行番号の同じ行同士が比較されます。
- このオプションをONにした場合は、内容の似ている行同士がマッチングされて比較されます。似ている行が無い場合は余剰行(挿入または削除された行)と判断されます。
- 「列の挿入/削除を考慮する」
- このオプションをOFFにした場合は、列記号の同じ列同士が比較されます。
- このオプションをONにした場合は、内容の似ている列同士がマッチングされて比較されます。似ている列が無い場合は余剰列(挿入または削除された列)と判断されます。
- 「値を比較する」
- セルに記載された数式文字列(例:= 1 + 2)ではなく、その計算結果の値(例:3)で比較を行います。
- 「数式を比較する」
- セルに記載された数式文字列(例:= 1 + 2)で比較を行います。
レポートオプション
- 「差分セルに色を付けて表示する」
- このオプションをONにした場合は、比較対象のExcelファイルの差分箇所に色を付けたものが比較結果レポートとして表示されます。(元のExcelファイルそのものは変更せず、コピーしたものに色を付けます。)
- 差分箇所が分かり易いように、Excelファイルに元々付いていた色(セル背景色、フォント色、罫線色など)はクリアされたうえで、差分箇所が着色されます。
- 「比較結果のテキストを表示する」
- このオプションをONにした場合は、差分内容の記載されたテキストファイルが比較結果レポートとして表示されます。
これらのオプションを選択しない場合も、比較結果レポートファイルが作業用フォルダに保存されます。
実行オプション
- 「比較完了時にこのアプリを終了する」
- このオプションをONにした場合は、比較処理がエラーなしで完了した場合にこのアプリケーションが自動で終了します。方眼DiffをTortoiseGitなどと組み合わせて利用する場合に便利です。
- 「省メモリモード」
- このオプションをONにすると、方眼Diffが利用するメモリ量を削減できる可能性があります。「java heap space」エラーが発生する場合にお試しください。
- 省メモリモードの場合、次の制約が生じます。
- 比較結果テキストにセル内容が表示されません
- 処理時間が長くなることがあります
言語
方眼Diffの表示言語を日本語、英語、簡体中国語の中から選択できます。
方眼Diffを再起動すると、選択した言語に切り替わります。
作業用フォルダ
- 「開く」
- 比較結果レポートファイルが保存される作業用フォルダをエクスプローラで表示します。
- 作業用フォルダのデフォルトの場所はシステムのユーザーホームディレクトリであり、Windows10の場合は、通常「C:\Users\username\xyz.hotchpotch.hogandiff」の配下に作成されます。
- 「変更…」
- 作業用フォルダを変更します。
- 「削除…」
- 作業用フォルダとその内容をごみ箱に削除します。
- 使用中などの理由で削除できないファイルはスキップします。
コマンドライン起動書式
基本構文
> 方眼Diff.exe bookPath1 bookPath2 <OPTIONS>
オプション構文
--consider-row-gaps=[true|false] --consider-column-gaps=[true|false] --compare-on-formulas=[true|false] --speed-first=[true|false] --show-painted-sheets=[true|false] --show-result-text=[true|false] --exit-when-finished=[true|false] --save-memory=[true|false]
オプションの説明
オプション | 説明 | デフォルト値 |
---|---|---|
–consider-row-gaps | 行の挿入/削除を考慮する場合に true を指定します。 | true |
–consider-column-gaps | 列の挿入/削除を考慮する場合に true を指定します。 | false |
–compare-on-formulas | セル内容の比較において、セルの内容が数式の場合に、計算値ではなく数式文字列を比較する場合に true を指定します。 | false |
–show-painted-sheets | 結果レポートとして、元のExcelファイルの差分箇所に色を付けたものを表示する場合に true を指定します。 | true |
–show-result-text | 結果レポートとして、差分箇所が記載されたテキストファイルを表示する場合に true を指定します。 | true |
–exit-when-finished | 比較処理が正常に終了した場合にアプリケーション(方眼Diff)を自動で閉じる場合に true を指定します。 | false |
–save-memory | 省メモリモードで比較を行う場合に true を指定します。 | false |
例
> "C:\Program Files\方眼Diff-0.14.0-win64\方眼Diff.exe" "C:\サンプル1.xls" "C:\サンプル2.xlsx" --consider-column-gaps=true --show-painted-sheets=false