集計表を各部署に配って、書き込んで返してもらう。戻ってきたものを開くと、行数が減っている。誰かが行ごと消したか、古いファイルに上書きしたかのどちらかだ。
どの行が消えたかは、配ったときの控えと番号で突き合わせれば出る。100行で試したら、消えた5行も、増えた3行も、金額が変わった12行も、全部拾えた。
以下の計算は、2026年9月22日にMicrosoft 365のExcel(バージョン16)で行った。100行のデータは式を確かめるために作った架空のものだ。
行番号で比べると、100行のうち90行が違うと出た
比べ方を2つ試した。番号の列で突き合わせる場合と、同じ行同士を比べる場合だ。
番号で突き合わせると、消えた5行、増えた3行、金額が変わった12行。入れた細工とちょうど同じ数になった。
同じ行同士を比べると、番号が違う行が88行、金額が違う行が90行。実際に手を入れたのは20行なのに、100行のほとんどが違うと出る。
理由は単純で、上のほうで5行消えているからだ。6行目より下は全部1行ずつ、あるいは何行かずつ上にずれる。ずれた先にある別の行と比べることになるので、ほとんどが不一致になる。
差分ツールに2つのブックを放り込むと、この形になることがある。行の増減を追いかけてくれないものだと、赤一色になって使えない。番号で突き合わせるほうに切り替える。
配る前に控えを取っていないと、何も比べられない
突き合わせるには、配ったときの中身が要る。これを取っていなければ、戻ってきたものが正しいかどうかは誰にも分からない。
配る直前にコピーを1つ作って、別のフォルダに置く。ファイル名に日付を入れておく。これだけで、あとから何でも比べられる。
控えを取るのを忘れて、戻ってきたものしか手元にないこともある。そのときは、集計の合計だけでも前月と比べる。行が消えていれば合計が減るので、そこで気づける。ピボットが更新されない話と同じで、合計を並べておくのがいちばん安い検算になる。
消えた行は、番号を探しにいけば出る
突き合わせの式は短い。配布の側に列を1つ足して、その番号が戻りにあるかを見る。
=IF($A3="","",IF(COUNTIF(戻り!$A:$A,$A3)=0,"消えた",
IF(VLOOKUP($A3,戻り!$A:$C,3,FALSE)<>$C3,"金額が変わった","")))
戻りに無ければ「消えた」。あって金額が違えば「金額が変わった」。両方とも当てはまらなければ空にする。
増えた行は逆向きに見る。戻りの側に列を足して、配布に無い番号を探す。
=IF($A3="","",IF(COUNTIF(配布!$A:$A,$A3)=0,"増えた",""))
30行のサンプルで動かすと、1003番と1011番が「消えた」、2001番が「増えた」、3行が「金額が変わった」と出た。差の列に10,000円ずつ入っている。

配った金額の合計は13,904,000円、戻ってきた合計は13,112,000円。差額は792,000円で、消えた2行の180,000円と882,000円を足して、増えた分と変わった分を差し引いた額になる。
並べ替えただけでも、行番号で比べると全行が違うと出る
行が消えていなくても、行番号の突き合わせは壊れる。並べ替えただけで壊れた。
100行の中身をそのままにして、順番だけ入れ替えて比べた。番号で突き合わせた差は0件。行番号で突き合わせた差は100件で、全部の行が違うと出た。
戻ってきた表が取引先順に並べ替えられていることはよくある。見る人が並べ替えただけで中身は触っていないのに、行番号で比べると全面的に書き換えられたように見える。
ファイルの大きさでも気づけない。同じ表で100行のものと95行のものを作って比べたら、6,595バイトと6,508バイトで、差は87バイトだった。5行減っても1.3%しか変わらない。開いて数えるまで分からない。
行数だけでも先に見ておくと違う。配った行数と戻ってきた行数が合っていなければ、その時点で何か起きている。突合表の一番上に両方の行数を出しているのはそのためだ。
番号が重なっていると、VLOOKUPは最初の1件しか見ない
この突き合わせは、番号が1件ずつであることを前提にしている。同じ番号が2行あるとVLOOKUPは最初に見つけた行だけを返すので、2件目は見ないまま「合っている」と出てしまう。
だから番号の重複を先に数える。
=IF($A3="","",IF(COUNTIF($A$3:$A$502,$A3)>1,"重複",""))
配布の側にも戻りの側にも置く。重複が1件でもあれば、そこを直してから突き合わせる。配った表には重複がなくても、戻ってきた表で行をコピーして増やしている人がいる。
配ったブックでは、重複が出た行の状態を「キーが重複していて見られない」に変えている。合っているとも違うとも言えないので、空にしないほうがいい。
番号のない表は、つないで作る
配る表に番号が付いていないことは多い。取引先と日付だけ、という形だ。
その場合は列を1つ足して、キーを作る。
=$A3&"_"&TEXT($B3,"yyyymmdd")
取引先と日付をつなぐだけでいい。これが1件ずつになるなら、番号の代わりに使える。ならないなら、もう1列足す。
作ったキーも重複を数える。つないでも重なるなら、その表は行を区別する手がかりを持っていないということだ。そこは表の作りを直すしかない。名簿の突き合わせが一致しない話と同じで、キーを作る段階で表記のゆれを吸収しておくと、あとが楽になる。
配るときに番号の列を作って、入力規則で触らせないようにしておくのが本当は早い。入力規則は手で打つときにしか効かないので止めきれないが、それでも書き換えは減る。
消えたのか直したのかは、差額で見る
「金額が変わった」と出た行は、直したのか壊したのかが式では分からない。
見るのは差の列だ。10,000円の差なら、実際に金額が動いたのだと思える。桁が1つずれているなら、入力の事故を疑う。差がマイナスで、しかも元の金額とぴったり同じなら、0を入れて消したのかもしれない。
うちは、差が元の金額の10%を超えた行だけ本人に聞くことにしている。全部聞くと、聞かれた側も何を直したか覚えていない。
「消えた」に出た行は、必ず聞く。行を消すのは意図があってのことが多いが、上書きで落ちている場合もある。どちらなのかは本人しか知らない。
共有ブックの競合は、この端末では再現できなかった
古いExcelの「ブックの共有」を使えば、変更履歴と競合の画面が出る。そこを確かめようとしたが、この端末のMicrosoft 365では共有ブックの状態にできなかった。プログラムから共有で保存しても、開き直すと共有になっていない。
だから、競合の画面がどう出るか、「自分を優先」に設定したときに何が起きるかは確認していない。OneDriveやSharePointに置く共同編集のほうも、この端末では試していない。
確かめられたのは、戻ってきたブックを見て差を出す側だけだ。ただ実務では、共有の仕組みを整える前に、配って戻す形で回していることのほうが多い。その形なら、控えを取って突き合わせるだけで足りる。
同じブックを何人にも同時に配るのはやめて、回す順番を決める。1人ずつ回せば、最後の人が全部を上書きするという事故は起きない。人数が多くて順番待ちが長くなるなら、そこで初めて共有の仕組みを考える。



