Excel

【Excel実務】IF関数とCOUNTIF関数でリストの差分比較をする

ねぇもりさん、2つのリストを目で見比べて、違いを確認する作業をやってるんだ。なんか良い方法ないかな~?
もりさん
もりさん
それなら、関数を使ってサクッと調べちゃおう!

Excel作業で、列同士の文字列や数字を比較して、差分チェックをすることってありますよね。

たとえば、A列とB列の文字列を比較して、

  • A列にあってB列にないもの
  • B列にあってA列にないもの
  • A列B列両方にあるもの

まさかこれを全件目視でチェックするなんて・・・苦行ですよね。

ここはサクッと関数でチェックしちゃいましょう。

Excelシートの二つのリストを比較する

「X月15日締めの伝票番号一覧」と「X月末日締めの伝票番号一覧」を比較して、「15日~末日の間に増加した伝票一覧」を抽出します。

Excelリスト比較サムネイル

「両方の列を昇順ソートして同じ行の値比較する」方法がありますが、上記の例の場合、伝票の種類によって番号の先頭が「1からはじまる」「2からはじまる」「3からはじまる」の3種類存在するので、昇順ソートでは比較できないのです。

使用する関数

この作業で使用するのは、毎度おなじみこの2つです。

  • IF関数
  • COUNTIF関数

IF関数とCOUNTIT関数を入れ子にして使用します。

Excelリスト比較2

「C列の伝票番号」が「B列の一覧」に存在するか、COUNTIF関数で件数を確認します。

もし、COUTIF関数の結果が0件であれば、C列の伝票番号はB列に存在しないことがわかります。

つまり、それは15日~末日までの間の”追加伝票”となります。

Excelリスト比較3

「C列にあってB列にない伝票番号」が7件ありますね。

関数のチェックだけでなく、念には念を、件数確認もしましょう!

  • 15日伝票:15件
  • 末日伝票:21件

追加伝票は6件のはずなのですが、なぜか7件ありますね。

ここから考えられるのが、「15日時点で存在した伝票のうちの1件が、末日までの間に削除されている」ことです。

これも関数でチェックしてみましょう。
C列に列を追加します。

「B列の伝票番号」が「D列の一覧」に存在するか、COUNTIF関数で件数を確認します。

Excelリスト比較4

やはり1件削除されていました。
15日時点では存在した20005が末日には消えています。

Excelリスト比較5

これで件数チェックの整合性もOKですね。

差分チェックは関数を使ってサクッと、正確に、片づけちゃいましょう。

もりさん
もりさん
目視点検なんてぜったいダメだよ!
そもそも人間の目はあてにならないし、時間もかかるからね
非エンジニアもプログラミングを学習する時代!

「プログラミング」ってエンジニアとかプログラマーの人がするものでしょ?文系の私には関係ないや~って思っていませんか?

いまは、非エンジニアもプログラミングを学習する時代です!

「プログラミングの必修化」をご存知ですか?

  • 2020年~ 小学校で開始
  • 2021年~ 中学校で開始
  • 2022年~ 高等学校で開始
  • 2024年~ 高校受験科目に新設

学校での必修化に向けて、すでに子ども向けプログラミングスクールが多数開校されています。

あと数年もすれば、あたりまえにプログラミングができる新入社員がやってくる時代になります。

プログラミングってなに?どんなもの?まずは無料体験から試してみませんか?

 

1週間の無料体験あり!
オンラインスクール実績No.1!