更新:2017.08.02
7月27日(木)に行った「家計簿77のExcel2013, 2016対応バージョンアップを個別対応します」の最後に、バージョンアップ前後の家計簿(の「2017-07」シート)が変わっていないことを IF関数で調べたが、時間が少なく、非常に端折った説明になってしまった。その基本は、
- 基本:2つの大きな表・シートを比較し、異なるセルを一目で把握する(経理・会計事務所向けエクセルスピードアップ講座 公開日: 2016/11/28)
- 具体的には、新規ブックに前後のシート(「2017-07」シート)をコピーし、
新しいシートに =if(Sheet1!A1=Sheet2!A1, 0, 1) で判定する。
帰宅後、シートをいちいちコピーしなくても出来るのではないか‥‥ と、下記の方法で行い、上手く出来ることを確認した。
- 注)下記は Windows10/Excel2013 の方法。Excel2013でインターフェイスが変わったので、Excel2010以前では「並べる方法」が異なる可能性がある。
§1.前提
- 2っのブックは保存されていて、ブック名は異なるものとする。
- ここでは家計簿のコピーの最新版(After)と古い家計簿(Before)を使ったので、「違いがある」ことになる。
- 比較条件
No. 状態 ファイル(ブック)名 シート名 最終列 最終行
1 After 2017-0725_my家計簿77_2017.xlsx 2017-07 M 19
2 Before 2017-0724_my家計簿77_2017.xlsx M 18
3 比較結果 Book1(空白のブック) M 19
§2.二っのブック(家計簿)を開く
- 家計簿77・フォルダーを開き、
- Copied・フォルダーを開く。
- After家計簿と Before家計簿を開く。
- 両者ともリボンを折りたたむ。‥‥ 3つのブックを上下に並べるため邪魔になる
- 比較するシート(例えば 2017-07)の
- 最終列と最終行を調べる。
- セルA1をアクティブにしておく。‥‥ 後の操作を簡単にするため
- (結果を入れる)新しいブックを開く。‥‥ 通常であれば Book1
- リボンは折りたたむ。
- 3ブックを上下に並べる。
その方法は‥‥ Windows10にバグがあるようで、スイスイとはできません。(たぶん)- タスクバーの何もない場所を右クリック ⇒ ウィンドウを上下に並べて表示する をクリックする。
- Excelの3ブック以外は[最小化]する。
- 再度、ウィンドウを上下に並べて表示する。
- 恐らく左半分に上下に並ぶので、ウィンドウの右をドラッグして広げる。
並ぶ順序はパソコンにより異なる。
§3.IF関数を入力する
基本は、=if(Sheet1!A1=Sheet2!A1, 0, 1)
-
- “Sheet1!A1”(Afterの2017-07シートのセルA1)と
“Sheet2!A1”(Beforeの2017-07シートのセルA1)は、ややこしいのでマウスを使って入力する。
- “Sheet1!A1”(Afterの2017-07シートのセルA1)と
- Book1のセルA1をクリックする。
- 数式バーに“=if(”と入力し、
- AfterのセルA1をクリックする。
- “=IF('[2017-0725_my家計簿77_2017.xlsx]2017-07'!$A$1” と表示されるので‥‥
- “$A$1” を相対番地(“A1”)に変える。([F4]×3)
- “=”を入力する。
- BeforeのセルA1をクリックする。
- “=if('[2017-0725_my家計簿77_2017.xlsx]2017-07'!A1='[2017-0724_my家計簿77_2017.xlsx]2017-07'!$A$1” と表示されるので‥‥
- “$A$1” を相対番地に変える。
- “,0,1)”を入力し、確定する。
- Book1のセルA1に 0 が表示される。(はず)
§4.数式をコピーする
- AfterとBeforeの最終列を調べ‥‥
- Book1のセルA1の数式を大きい方の最終列まで(フィルハンドルで)コピーする。
- AfterとBeforeの最終行を調べ‥‥
- Book1のセルA1の数式を大きい方の最終行まで(フィルハンドルで)コピーする。
- Book1のセルB1〜最終列のセルまで選択し、
- フィルハンドルをダブルクリックする。
§5.終わって...
- 2っのExcelブックは(保存しないで)閉じる。
- 1. を行っても Book1 の計算式は生きている。
但し、数式バーをみるとわかるが、ブックのパス名が付いたものに変わっていた。 - 違うシートを比較したい場合は、いちいちそのブックを開かなくても、セルA1の式を直接変更すれば可能‥‥ と思われる。