エクセルIF関数で別シートを参照する方法

エクセルIF関数で、別シートを参照する方法を紹介しています。IF関数で、別シートのデータを参照して、条件式を指定することができます。別シートを参照する式も、基本的なIF関数の使い方と同じです。別のブックにデータがあるときも、そのデータを参照して、条件式を指定することができます。ここでは、IF関数を使って、別のシート、別ファイルを参照する方法を、分かりやすく説明しています。

 

 

IF関数

エクセルIF関数は、真の場合は真の場合の値を返し、偽の場合は偽の場合の値を返す関数です。IF関数は、エクセル関数の中で使用頻度が高い関数です。他の関数と組み合わせて使用されることも多いです。

IF関数の書式と引数

IF(論理式,真の場合,偽の場合)

論理式 条件式を指定します。
真の場合 論理式がTRUEの場合に返す値を指定します。
偽の場合 論理式がFALSEの場合に返す値を指定します。省略するとFALSEを返します。

IF関数の基本的な使い方

IF関数の基本的な使い方です。文字列には「”」(ダブルクォーテーション)で囲みます。数値は「”」で囲む必要はありません。

B列に、性別が「M」「N」で入力されています。F関数で性別を、「男」「女」で表示してみましょう。

 

C2に、式を入力します。

C2 =IF(B2=”N”,”女”,”男”)

C2には「男」が返されます。

C2の式を、下にドラッグしましょう。

C列に、性別が「男」「女」で表示されました。

 

 

別シートを参照

IF関数で別シートを参照

エクセルIF関数で別シートを参照して判定を表示させてみましょう。

シートは「Sheet1」と「Sheet2」です。

Sheet1には金額別ランク一覧表、Sheet2にはプラン別一覧表があります。

Sheet1のD列「金額別ランク」に、Sheet2のD列「合計金額」を「10,000以上」と「10,000以下」で判定して表示させましょう。

「Sheet1」です。

 

「Sheet2」です。

 

合計金額で判定して金額別ランクに表示させる文字列

合計金額 金額別ランク
10,000以上 A
10,000以下 B

 

 

「Sheet2」のD列「合計金額」が「10,000以上」だったら、「Sheet1」のD列「金額別ランク」に「A」、「10,000以下」だったら「B」と表示させましょう。

 

「Sheet1」のD2に式を入力します。

D2 =IF(Sheet2!D4>=10000,”A”,”B”)

D2の式は、「Sheet2!D4」で「Sheet2」のD4のセルを参照しています。

D2の式を、下にドラッグしましょう。

「Sheet1」のD列「金額別ランク」に、判定した結果が表示されます。

 

 

IF関数でAシートのセルの値をBシートに表示

IF関数でシートにあるセルの値を、そのまま他のシートに表示させる場合、数式「=A1」で表示させることができますが、別シートにあるセルが「空白」の場合は、数式「=A1」だと「0」が入力されてしまいます。

また、別シートにあるセルが「空白」だったら、ある文字列を表示させたいというときがあります。このような時に、エクセルIF関数で表示させることができます。

使用するシートは「SheetA」と「SheetB」です。

 ①.「SheetA」には金額別ランク一覧表、「SheetB」にはプラン別一覧表があります。

 ②.「SheetA」のD列「合計金額」に、「SheetB」のD列「合計金額」を表示させます。

 ③.「契約者№」は「SheetA」「SheetB」2シートは並び順が同じです。

「SheetB」のD列「合計金額」が「空白」の場合は、「SheetA」のD列に「未入力」、それ以外は「SheetB」のD列「合計金額」の、セルの値が表示されるようにします。

空白の場合は「未入力」と表示

「SheetB」のD列「合計金額」が、「空白」の場合は「未入力」と表示させましょう。

「SheetA」です。

 

「SheetB」です。

 

「SheetA」のD2に、式を入力しましょう。

 

D2 =IF(SheetB!D4=””,”未入力”,SheetB!D4)

D2の式を、下にドラッグしましょう。

「SheetB」のD列「合計金額」が「空白」の場合は、「SheetA」のD列に「未入力」、それ以外は「SheetB」のD列「合計金額」の、セルの値が表示されました!

 

 

空白の場合は「空白」を表示

D2に、「SheetB」のD列「合計金額」が「空白」の場合は、「SheetA」のD列に「空白」を表示させる式を入力しましょう。

 

D2 =IF(SheetB!D4=””,””,SheetB!D4)

D2の式を、下にドラッグしましょう。

「SheetB」のD列「合計金額」が「空白」の場合は、「SheetA」のD列に、「空白」が表示されました!

 

 

別ファイルを参照

IF関数で別ファイルを参照

IF関数で別ファイルを参照する場合、数式「='[ブックA.xlsx]SheetA’!A4」で表示させることができますが、セルが「空白」の場合は、「0」が入力されてしまいます。

IF関数で別ファイルを参照する時、セルが「空白」の場合だったら「空白」を、または「特定の文字」を表示させてみましょう。

エクセルIF関数で別シートを参照する同じ方法で、IF関数で別ファイルを参照できます。

別ファイルを参照する式

使用するファイル:

  ① 「ブックR.xlsx」「SheetR」

  ② 「ブックQ.xlsx」「SheetQ」

「ブックR.xlsx」「SheetR」を参照して、「ブックQ.xlsx」「SheetQ」にセルの値を表示させましょう。

1.エクセルIF関数、別ファイル参照で「空白」の場合は、「空白」を表示させる式です。

    B2 =IF(‘[ブックR.xlsx]SheetR’!B2=””,””,'[ブックR.xlsx]SheetR’!B2)

2.エクセルIF関数、別ファイル参照で「空白」の場合は、「未入力」を表示させる式です。

    B2 =IF(‘[ブックR.xlsx]SheetR’!B2=””,”未入力”,'[ブックR.xlsx]SheetR’!B2)

B2の式を下にドラッグすると、「ブックR.xlsx」「SheetR」のセルの値が、「ブックQ.xlsx」「SheetQ」に表示されます。

ブックを参照する場合、自動で「=IF(‘[ブックR.xlsx]SheetR’!$B$2=””,””,'[ブックR.xlsx]SheetR’!$B$2)」のように絶対値「$B$2」で入力されます。

式をコピーする場合は「B2」と、絶対値を外しましょう。

ここがポイントです。注意しましょう。

IF関数でワイルドカードを使う

エクセルIF関数でワイルドカードを使いたいときがありますが、IF関数でワイルドカードを使えるかというと、使えません。条件式にワイルドカードを使うと、IF関数ではワイルドカードを文字列と判断してしまいます。単独では使えませんが、COUNTIF関数と組み合わせるとワイルドカードが使えます。IF関数でワイルドカードを使用すると、複雑な条件式で判定することができます。

こちらの記事もご覧ください。⇒エクセルIF関数でワイルドカードを使う方法!あいまい検索を使いたい