【Excel】ISFORMULA関数を徹底解説!基本的な使い方から条件付き書式、複数セル、IF関数との組み合わせまで

この記事で分かること
  • ISFORMULA関数の基本的な使い方と引数
  • IF関数と組み合わせて、数式が入っているセルとそうでないセルを自動で区別する方法
  • 条件付き書式を使って、数式セルだけを色付けして目立たせる方法
  • NOT関数を使った「ISFORMULA関数の逆」の活用法
  • 複数セルや範囲のデータを扱う際の考え方と注意点

ISFORMULA関数とは?基本の使い方

ISFORMULA関数とは

「指定したセルに数式が入っているかどうか」を判別するための関数

結果は「論理値」で返されます。

  • TRUE:セルに数式が入力されている場合
  • FALSE:セルに数式以外の値(文字列や数値など)が入力されている場合

数式が入力されているかどうかを一瞬で確認できるため、データの整合性チェックや、後述するIF関数条件付き書式と組み合わせて業務効率を大幅にアップできますよ!

1. 基本構文

=ISFORMULA(検査対象)

検査対象:数式が入力されているか調べたいセルを指定します。

2. 例題:基本的な使い方

以下の表で、セルB2からB5に数式が入っているか確認してみましょう。

数式

=ISFORMULA(A2)

結果

  • C2セル:=ISFORMULA(A2) → FALSE(A2セルは数値)
  • C3セル:=ISFORMULA(A3) → TRUE(A3セルは数式 =A2+10)
  • C4セル:=ISFORMULA(A4) → FALSE(A4セルは文字列)
  • C5セル:=ISFORMULA(A5) → TRUE(A5セルは数式 =”大阪”&A2)
結果

【応用】ISFORMULA関数と他の関数を組み合わせる

ISFORMULA関数を実務でよく使うのは、IF関数NOT関数と組み合わせる時です。これによって、作業を自動化できます。

IF関数と組み合わせて「数式」か「値」かを自動判別

ISFORMULA関数は「TRUE/FALSE」を返すため、IF関数の論理式としてそのまま使えます。

セルに数式があれば『計算済み』、なければ『手入力』と表示する」という処理を自動化してみましょう。

=IF(ISFORMULA(検査対象), 真の場合の処理, 偽の場合の処理)

例題:IF関数との組み合わせ

以下の表で、セルB2からB5に入っているデータが数式か否かによって、C列にメッセージを表示します。

A2セルには”=SUM(A1:A2)”がB5セルには”=”合計:”&C1″が入力されています

数式:

=IF(ISFORMULA(B2), “計算済み”, “手入力の値”)

結果:

2. NOT関数と組み合わせて「数式が入っていないセル」を判別(ISFORMULA関数の逆)

ISFORMULA関数は数式があればTRUEを返します。

逆に「数式が入っていないセル」(つまり手入力の値のセル)を判別したい場合は、NOT関数で結果を反転させます。

=NOT(ISFORMULA(検査対象))

結果:

  • 数式が入っている → NOT(TRUE) → FALSE
  • 数式が入っていない → NOT(FALSE) → TRUE

この組み合わせは、「手入力のデータだけ」を処理したい場合に非常に役立ちます。

例題:NOT関数との組み合わせ

以下の表で、数式が入っていないセル(手入力の値)を判別してみましょう。

数式:

=NOT(ISFORMULA(B2))

結果:

結果

条件付き書式で数式が入ったセルを強調表示する

ISFORMULA関数は、数式があるかどうかを目視で確認するために使えますが、条件付き書式と組み合わせることで、数式が入力されているセルだけを自動で色付けし、シートの構造を一目で把握できるようにできます。

これは、他の人が作成した複雑なシートを分析する際に非常に便利です!

例題1:数式セルをハイライト表示する

以下の表の範囲B2:B5内で、数式が入力されているセル(B3とB5)を黄色で塗りつぶします。

設定手順:

  1. セル範囲B2:B5をドラッグして選択します。
  2. 「ホーム」タブにある「条件付き書式」をクリックし、「新しいルール」を選択します。
  3. 「ルールの種類を選択してください」で「数式を使用して、書式設定するセルを決定」を選択します。
  4. 「次の数式を満たす場合に値を書式設定」のボックスに、以下の数式を入力します。

    =ISFORMULA(B2)

  5. 「書式」ボタンをクリックし、「塗りつぶし」タブで黄色を選択し、「OK」をクリックします。
④ポイント

ルールに入力するセルは、選択範囲の左上のセル(ここではB2)を指定します。Excelが自動で他のセルにも相対的に適用してくれます。

結果:


例題2:手入力のデータだけを強調表示する(NOT関数の応用)

数式ではなく、ユーザーが直接入力した値(手入力のデータ)だけを強調表示したい場合もあります。これは、データ入力の間違いを防ぎたいときなどに役立ちます。

先ほどと同じ表で、手入力の値(B2とB4)だけを緑色で塗りつぶします。

設定手順:

  1. セル範囲B2:B5を選択します。
  2. 条件付き書式の新しいルール作成画面を開き、数式で書式設定するルールを選択します。
  3. 数式ボックスに、以下のNOT関数を組み合わせた数式を入力します。
    =NOT(ISFORMULA(B2))
  4. 書式で緑色を選択し、「OK」をクリックします。
③解説

この数式は「B2に数式が入っていない(FALSE)なら、TRUEを返す」という意味になり、手入力のセルにだけ書式が適用されます。

結果:

結果

複数セル・範囲の扱いと注意点

ISFORMULA関数を使う上で、よくある疑問点や注意点について解説します。

1. ISFORMULA関数に「複数セル/範囲」は指定できる?

ISFORMULA関数の引数「検査対象」には、基本的に単一のセルしか指定できません。

例えば、=ISFORMULA(A1:A10)のように範囲を指定しても、結果は検査対象の範囲の左上のセル(この場合はA1)の値に対する判断(TRUE/FALSE)しか返されません。

例題:範囲指定の動作

以下の表で、

=ISFORMULA(B2:B5)

を実行した場合の動作を確認します。

結果:

でんちゃん
でんちゃん

C2にはFALSEが返されましたが、これは範囲の先頭セルB2が数値(手入力)だからです。B3やB5が数式であっても、この単一の結果には反映されません。

複数セルを調べたい場合:

複数のセルをまとめて調べたい場合は、前述の条件付き書式を利用するか、または対象範囲の隣の列にISFORMULA関数を入力し、下方向にオートフィルでコピーして、一つずつ結果を確認するのが一般的な方法です。

2. ISFORMULA関数が使えない時(互換性)

ISFORMULA関数はExcel 2013以降で追加された比較的新しい関数です。

もしExcel 2010以前のバージョンを使用している場合、この関数は使えません

古いバージョンの環境でファイルを使う可能性がある場合は、VBA(マクロ)やより複雑な代替手段を検討する必要があります。


まとめ

ISFORMULA関数は、Excelのデータ構造をチェックし、作業を自動化するための土台となる関数です。

目的使う関数・機能詳細
数式かどうかを判別ISFORMULA(セル)数式ならTRUE、値ならFALSE
数式でなければ(手入力なら)TRUENOT(ISFORMULA(セル))NOT関数で結果を反転させる
数式によって動作を変えたいIF(ISFORMULA(セル), … , …)IF関数の論理式として活用する
シート上の数式セルをハイライト条件付き書式ISFORMULA(A2)視覚的にシート構造を分かりやすくする

この関数をマスターして実務で活用してみてくださいね!

この記事を書いた人
でんちゃん

一児の父。人事として6年、採用・教育・労務・人事制度などを経験してきました。これまで200名ほどの方と面接を実施してきたので就職・転職に関するノウハウがあります。またExcelを用いたデータ分析が得意です。
娘が生まれ日々のすさまじい成長を目の当たりにしています。
人事やExcel、子育てに関してのお役立ち情報を伝えるブログを作っていきます!

でんちゃんをフォローする
Excel
シェアする
でんちゃんをフォローする

コメント

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