こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

-広告-

解決済みの質問

エクセルのワークシート関数でA、B列不同数取得

エクセルのワークシートA列とB列にデータがあります。
データは数値、文字列、空白です。エラー値はありません。
A列のセルと同じ行のB列のセルの値が同一でないA列データの個数(またばB列データの個数)を求めるワークシート関数はないでしょうか?(空白同士は同一とみなします。)
C列などに作業列を作ってA、Bの比較をして求める方法はすぐに思いつきますが、作業列なしで求めたいのです。

投稿日時 - 2016-01-24 11:31:39

QNo.9116299

困ってます

質問者が選んだベストアンサー

=SUMPRODUCT((A1:A99<>B1:B99)*1)
とかでいいです。


ご利用のエクセルのバージョンがご相談に書かれていませんが、新しいエクセルを使っているなら
=SUMPROEUCT((A:A<>B:B)*1)
と計算する事も可能です。ただし劇重なので、教わっても使ってはいけません。

投稿日時 - 2016-01-24 12:04:07

ANo.1

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

-広告-
-広告-

回答(2)

ANo.2

論理演算と合計の組み合わせで目的の値が得られます。
但し、配列演算になりますので数式の組み立てには守るべき規則があります。
基本的にはSUM関数で算出できます。
=SUM((A:A<>B:B)*1)
この数式はキー入力時にCtrl+Shift+Enterで確定します。
論理演算のA:A<>B:BはTRUEまたはFALSEが返りますので、これに1を乗じると1または0になります。(0を加えても同じです)
Enterキーのみで確定するには次のようになります。
=SUMPRODUCT((A:A<>B:B)*1)
他の数式では次のような数式も使えます。
=SUM(INDEX((A:A<>B:B)*1,0))
INDEX関数は行番号を0またはブランクにすると配列全体を返しますのでそれを合計すれば目的に合った値を得られます。

投稿日時 - 2016-01-24 12:44:17

お礼

さっそくありがとうございます。

投稿日時 - 2016-01-24 14:01:50

-広告-
-広告-
-広告-

あなたにオススメの質問

-広告-
-広告-