Excelの裏技 ダブルマイナス(--)活用術

こんにちは。

先日生徒様にExcelのご相談を受けて解決策の式をご提案した時に、

「この記号は何ですか?関数?あまり見たことないけれど」

と言われました。

その時使った記号は「--」、ダブルマイナスと読みます。

 

マイナスを2つ続けて入力したもので、N関数と同じ働きをするのですが、Excelのテキストや関数の本にも載っていないので、あまり知られていないマイナーな記号です。(-だけにw

 

実務では結構便利な裏技として使われていますので、使い方や活用法などをご紹介しますね。

 

【ダブルマイナスとは】

--」は、ExcelTRUE/FALSEの論理値を数値(1/0)に変換するためのテクニックです。
配列演算や条件付き集計で使うと、COUNTIF関数やSUMIF関数ではできない処理を簡潔に書けるようになります。

 

【論理値って?】

論理値はある命題が「TRUE」か「FALSEかを示す値のことです。

「真」と「偽」、「1」と「0」などで表します。

 

例えば、Excelの表で、A列とB列の1行目~100行目までにそれぞれ数値が入力されているとします。

その横、C列の1行目に「=A1:A100=B1:B100と入力すると、同じ行のA列の値とB列の値が全く同じ数値ならC列のセルには「TRUE]と表示され、違えば「FALSEと表示されます。

この「TRUE」「FALSE」を「1」「0に置き換えてくれるのが、ダブルマイナスです。

 

 

実務で使えるダブルマイナスの活用例を5つご紹介しますね。

 

例①:複数列の一致チェック(データ突合)

目的A列とB列の値が一致する行数を数える

=SUM(--(A2:A100=B2:B100))

用途:マスタデータと入力データの照合、二重入力チェックなど
COUNTIFでは不可:列同士の比較はできない

 

例②:複数条件のOR判定(柔軟な条件分岐)

目的C列が「完了」または「済」の行数を数える

=SUM(--((C2:C100="完了")+(C2:C100="")>0))

用途:ステータス管理、進捗集計など
COUNTIFSでは不可OR条件は書けない

 

例③:条件付きの合計(SUMIFSより柔軟)

目的C列が「○」のときのD列の合計

=SUM(--(C2:C100="")*D2:D100)

用途:条件付き売上集計、フラグによる絞り込み
SUMIFSでも可能:複数条件や動的条件ではこちらが簡潔

 

例④:条件付きの平均(AVERAGEIFSより柔軟)

目的C列が「A」のときのB列の平均

=SUM(--(C2:C100="A")*B2:B100)/SUM(--(C2:C100="A"))

用途:部門別平均、カテゴリ別分析など
AVERAGEIFS
でも可能:条件が複雑な場合に有利

 

例⑤:複数条件のAND判定(集計)

目的A列が「男性」かつB列が30歳以上の行数

=SUM(--((A2:A100="男性")*(B2:B100>=30)))

用途:ターゲット抽出、属性別集計
COUNTIFS
でも可能だが:条件が動的な場合に柔軟

 

以上、代表的な使用例をご紹介しましたが、この他にもエラー処理や条件付き書式にも応用可能です。

ダブルマイナスは、複雑な条件でも1行で書けるシンプルさと、OR条件や列比較にも対応できる柔軟さと、補助列なしに配列演算で高速一括処理できる機能を併せ持ち、データのチェックや集計分析を助けてくれる実務向きの便利な記号です。

ぜひこの裏技を使いこなして、お仕事に役立ててくださいね。

他の使い方も知りたい!という方は、お気軽にスタッフにお尋ねください