Excel関数 逆引き集 | 奇数偶数判定 → ISEVEN / ISODD

Excel VBA Excel
スポンサーリンク

概要

「この番号は奇数?偶数?」
「行番号が偶数の行だけ色を変えたい」
「伝票番号が奇数のときだけ“Aグループ”にしたい」

こういう 奇数/偶数判定 をシンプルにやってくれるのが
ISEVEN(偶数か?)/ISODD(奇数か?) です。

どちらも「YES / NO」を
TRUE(はい)/FALSE(いいえ)で返す、“判定専用”の関数です。


ISEVEN / ISODD の基本

役割と戻り値

ISEVEN
「偶数かどうか」を判定します。
偶数なら TRUE、そうでなければ FALSE。

ISODD
「奇数かどうか」を判定します。
奇数なら TRUE、そうでなければ FALSE。

どちらも書式は同じです。

=ISEVEN(数値)
=ISODD(数値)

例えば、A2 に数値が入っているとき

=ISEVEN(A2)   ' A2 が偶数なら TRUE
=ISODD(A2)    ' A2 が奇数なら TRUE

のように使います。


シンプルな奇数・偶数判定

A2 が偶数かどうかを判定する

A2 が偶数かどうかを TRUE / FALSE で判定する式は、次のとおりです。

=ISEVEN(A2)

A2 = 2, 4, 10 などのとき TRUE
A2 = 1, 3, 11 などのとき FALSE になります。

A2 が奇数かどうかを判定する

奇数かどうかを判定したいときは ISODD を使います。

=ISODD(A2)

A2 = 1, 3, 11 などのとき TRUE
A2 = 2, 4, 10 などのとき FALSE です。


IF と組み合わせて「奇数」「偶数」と表示する

TRUE / FALSE のままだと分かりにくいので、
IF 関数と組み合わせて「奇数」「偶数」と表示させるのが実務でよく使う形です。

A2 が偶数なら「偶数」、奇数なら「奇数」と表示する

=IF(ISEVEN(A2), "偶数", "奇数")

ISEVEN(A2) が TRUE のとき「偶数」、FALSE のとき「奇数」です。
「偶数か判定した結果」をそのまま分岐の条件にしています。

A2 が奇数なら「奇数」、偶数なら空白にする

奇数のときだけ印をつけたい、という場合は例えばこうです。

=IF(ISODD(A2), "奇数", "")

奇数のときだけ「奇数」、偶数は空白になります。


行番号と組み合わせた「交互のパターン」

行番号が偶数の行だけ色分けやフラグ

行番号 ROW() と組み合わせると、「2 行おきに何かする」が簡単にできます。

A列にデータがあるとして、
「偶数行だけ“偶数行”と表示したい」なら、B2 に次の式を書きます。

=IF(ISEVEN(ROW()), "偶数行", "")

ROW() は自分の行番号を返します。
ISEVEN(ROW()) が TRUE の行だけ「偶数行」と表示されます。

行番号が奇数の行を判定する

奇数行だけフラグを付けたいときは ISODD を使います。

=IF(ISODD(ROW()), "奇数行", "")

条件付き書式の数式でも同じ発想で、
奇数行/偶数行ごとに色を変えることができます。


番号ルールに応じたグループ分け

伝票番号が奇数なら「Aグループ」、偶数なら「Bグループ」

A2 に伝票番号が入っているとして、
奇数/偶数でグループ分けをする例です。

=IF(ISODD(A2), "Aグループ", "Bグループ")

奇数番号 → Aグループ
偶数番号 → Bグループ
というように、番号ルールで区分したいときに役立ちます。

番号が偶数のときだけ計算する

偶数番目の行だけ合計対象にしたい、といったときは、例えばこう書けます。

=IF(ISEVEN(ROW()), B2, 0)

偶数行なら B2 の値を返し、奇数行なら 0 を返します。
この列を SUM すれば、「偶数行だけの合計」が取れます。


例題

問題1

A2 の数値が偶数かどうかを TRUE / FALSE で判定する式を書いてください。

=ISEVEN(A2)

問題2

A2 の数値が奇数なら「奇数」、偶数なら「偶数」と表示する式を書いてください。

=IF(ISEVEN(A2), "偶数", "奇数")

問題3

行番号が偶数の行だけ「偶数行」と表示し、それ以外は空白にする式を B2 に書いてください。

=IF(ISEVEN(ROW()), "偶数行", "")

問題4

A2 に伝票番号が入っています。
伝票番号が奇数なら「Aグループ」、偶数なら「Bグループ」と表示する式を書いてください。

=IF(ISODD(A2), "Aグループ", "Bグループ")

問題5

B列に数値が入っています。
偶数行の値だけを合計したいとき、C2 に「偶数行なら B2、それ以外は 0」を返す式を書いてください。

=IF(ISEVEN(ROW()), B2, 0)

まとめ

ISEVEN / ISODD は、

  • 数値が偶数か?奇数か?を
  • TRUE / FALSE で教えてくれる“判定専用関数”です。

基本の形はとてもシンプルです。

=ISEVEN(数値)   ' 偶数なら TRUE
=ISODD(数値)    ' 奇数なら TRUE

これを IF や ROW() と組み合わせるだけで、

  • 奇数/偶数で表示を変える
  • 行ごとに交互の処理をする
  • 番号ルールでグループ分けする

といったことが簡単にできます。
まずは A2 にいろいろな数値を入れて、ISEVEN / ISODD の反応を見てみるところから慣れていきましょう。

タイトルとURLをコピーしました