tipsやちょっとしたスクリプト >> ExcelTableCmp 概要 †Excelの二つのブックを比較します。 テーブル内のデータを指定されたカラムをキーにして比較します。行やカラムの順番が入れ替わっていても対応するキーとカラム名によって対象のセルを決定して比較します。 GUIで相違をわかりやすく表示したりするものではなく、テスト等の一括処理などに使うコンソールアプリケーションです。 windows7 professionalおよびwindows8 上でのoffice2010と.NET Framework 4を対象に動作確認しています。 「Creative Commons 表示 2.1 日本」の元でライセンスまたはパブリックドメインとします。 説明 †コマンドライン引数 †> foo1 sourceile.xls targetfile.xls 比較する二つのファイルをコマンド行引数としてしています。ここでは最初に指定した方法ソース、二つ目のファイルをターゲットと呼ぶことにします。 比較するデータは以下の書式です。左がソース、右がターゲットです。
終了値 †比較した結果相違が見つからないときは終了コードは0です。 相違が見つかったときはそれ以外です。 配布 †プログラムソースのダウンロードは以下のURLから。バイナリの配布はありません。 http://gqg.jp/files/Try1_24.zip $ gpg --fingerprint --print-md sha1 Try1_24.zip Try1_24.zip: 9F87 9A99 25C4 DF24 114F 6F57 D6E8 2EAF BBFF 26FD $ gpg --fingerprint --print-md md5 Try1_24.zip Try1_24.zip: 7C A0 09 F6 7E 0F 48 43 82 5F 19 31 BB 9D 0C 9B おことわり †サンプルアプリレベルですのでドキュメントやソース中のコメントは不十分です。 例外のキャッチも不十分なので指定されたファイルが開けなかったときなどは.NET Frameworkのランタイムがだすダイアログが表示されたりします。 正しくは例外をキャッチしてエラーコードをもって終了すべきです。 Mainの1メソッドだけなのもちょっとしたチャレンジで、普段このような書き方のプログラムをしているわけではありません。 同じキーを持つレコードの重複やカラム名の重複などもチェックしていません。 類似ツール †"excel 比較 レコード キー"で検索したところ以下のようなソフトがあるようです。
|