Tools

WinMerge で Excel(Word,PowerPoint,PDF)ファイルを比較する

投稿日:

1. WinMerge について

WinMerge は、ファイルの内容を比較する Windowsアプリケーションです。

かなり古いアプリケーションですが、今だに問題なく使えています。

名前の通りマージもできますが、こちらの機能はあまり使われていないようです。私も比較にしか使っていません。

スクリーンショット – WinMerge には、たくさんのスクリーンショットが載っているので、どんなツールであるかすぐに分かるでしょう。

本記事にも1つだけスクリーンショットを貼っておきます。

テキストファイルを比較しているところ

参考

2. xdocdiff プラグイン

WinMerge に、xdocdiff というプラグインを導入すると、Excel (Word, PowerPoint, PDF) ファイルも比較することができます。

このプラグインは、公式サイト xdocdiff からダウンロードできますが、こちらに置いてあるプラグインだと、32bit版の WinMerge を使う必要があるようです。

それに対して、xdocdiffPlugin64 というページでは、64bit版の WinMerge でも動作する xdocdiff のプラグインファイルが用意されています。但し、必要なファイルがこちらのページにすべてあるわけではないので、xdocdiff からのダウンロードも必要です。

導入手順

(1) 64bit版の WinMerge が導入済であるとします。

(2) WinMerge を起動して、[プラグイン(P)] – [自動展開(A)] にチェックを入れます。

WinMerge の設定

(3) WinMerge を終了します。

(4) xdocdiff から xdocdiffPlugin_1_0_6d.zip という圧縮ファイルをダウンロードして解凍します。

解凍されたファイルの中で必要なのは、「zlib.dll」ファイルだけです。

(5) xdocdiffPlugin64 から xdocdiffPlugin64.zip という圧縮ファイルをダウンロードして解凍します。

解凍されたファイルの中で必要なのは、「xdoc2txt.exe」ファイルと、MergePluginsフォルダ内にある「amb_xdocdiffplugin.dll」ファイルだけです。

(6) 「xdoc2txt.exe」と「zlib.dll」を、WinMerge のインストールフォルダにコピー(追加)します。インストールフォルダというのは、WinMergeU.exe ファイルが存在するフォルダで、今回の場合は、「C:\Program Files (x86)\WinMerge」でした。

(7) 「amb_xdocdiffplugin.dll」を、MergePlugins フォルダ内にコピー(追加)します。

C:\Program Files (x86)\WinMerge フォルダ(今回の場合)

以上で導入作業は完了です。

3. Wordファイルを比較してみる

Wordファイルを比較してみます。

こちらの Wordファイルと

Test1.docx

こちらの Wordファイルを

Test2.docx

WinMerge で比較すると、このように表示されます。

Wordファイルを比較しています

文字についての変更箇所については、比較できています。

しかし、文字の装飾に関する情報は比較できないようです。

4. Excel ファイルを比較してみる

次に Excel ファイルを比較してみます。

こちらの Excelファイルと

Test1.xlsx

こちらの Excelファイルを

Test2.xlsx

WinMerge で比較すると、このように表示されます。

Excelファイルを比較しています

こちらも、文字については比較できていますが、文字やセルの装飾に関する情報は比較できないようです。

5. WSL から git difftool で WinMerge を使う

WSL 上の git difftool コマンドで、WinMerge を使う場合は、gitconfig ファイルに以下を記述します。

[diff]
    tool = winmerge-wsl
[difftool "winmerge-wsl"]
    path = \"/mnt/c/Program Files (x86)/WinMerge/WinMergeU.exe\"
    cmd = \"/mnt/c/Program Files (x86)/WinMerge/WinMergeU.exe\" -e -u $(wslpath -w $LOCAL) $(wslpath -w $REMOTE)
[difftool]
    prompt = false

WinMergeU.exe ファイルへのパスは、自分の環境に合わせて必要があれば変更してください。

これで、WSL 上からでも Excel ファイルなどの変更箇所が手軽に表示できます。

6. おわりに

装飾に関する情報は比較できないものの、それでも十分に利用する価値がありますし、むしろないと困ります。使わない理由がありません。

📂-Tools

執筆者:labo


comment

メールアドレスが公開されることはありません。

関連記事

Evernote

Evernoteに自動引き落しさせない方法

Evernoteに自動引き落しさせない方法について説明します。

Windows

Putty でスクリーン上のやりとりをログファイルに保存する方法

目次1. はじめに2. Putty でログをとる手順3. ログファイルが既に存在していた場合の挙動設定4. おわりに 1. はじめに PuTTY とは、Windows用のターミナルエミュレータです。 …

WSL

WSL 2 で Docker を使うパターン

目次1. はじめに1-1. Docker についての基礎知識1-2. 前提2. WSL 2 ディストロ(Ubuntu) + パッケージのDocker を利用するパターン3. WSL 2 ディストロ(U …

Git

ファイル(もしくはディレクトリ)を Git による管理から外す手順

Git を使ってファイルやディレクトリの履歴を管理してきたけれど、特定のファイル(もしくはディレクトリ)を Git による管理から外す場合の手順です。 1. ファイル ファイルを実際に削除しつつ、イン …

Vim

Vim: 行番号の表示

Vim の行番号表示機能について説明します。 目次1. 前提とする環境2. 行番号表示に関する設定項目number (もしくは nu)relativenumber (もしくは rnu)3. この設定項 …