リテラアップダウンロード

Excelで別シートを参照する方法|できない原因やエラーの対処方法

Excelで別シートを参照する方法

Excel(エクセル)の参照で、別シートにあるセルを参照する方法を解説します。この方法を覚えておけば、複雑なシステムを作成する時でもシート別にデータを管理することができて全体の構成をすっきりさせることができるでしょう。

できない原因やエラーが起きた時の対処方法を紹介していますので、行き詰った時に参考にしてください。

Excelで別シートのセルを参照する方法

Excel(エクセル)で、別のシートにあるセルを参照して表示させる方法を複数紹介します。同じシートのセルを参照するのとほぼ同様の手順でできるので、1つずつ順に見ていきましょう。

  • 「=」を入力して別シートのセルを参照する方法
  • INDIRECT関数を使って別シートのセルを参照する方法
  • 別シートの複数セルをまとめて参照する方法

「=」を入力して別シートのセルを参照する方法

1番目に紹介するのはイコール「=」を使用して別シートのセルを参照する方法です。まず参照した結果を表示させたいセルを左クリックして選択してから「=」を入力します。

「=」を入力して別シートのセルを参照する方法

次にそのまま参照したいセルのあるシート見出しを選択しましょう。選択したシート内にある参照元のセルを左クリックで選択して「Enter」キーを押してください。これで別のシートにあるセルを参照した結果が表示されます。

「=」を入力して別シートのセルを参照する方法

注意するのは、参照したいセルを左クリックした後に「Enter」キーを押さないと参照元のセルが確定しないということです。左クリックしただけで「Enter」キーを押さないまま別のセルを操作してしまうと参照先が変わってしまうので気をつけましょう。

INDIRECT関数を使って別シートのセルを参照する方法

次にINDIRECT関数を使った別シートのセルを参照する方法を紹介します。INDIRECT関数とは指定される文字列への参照を返す関数で、書式はINDIRECT(参照文字列,[参照形式])となり引数が2つあります。

「=」を入力して別シートのセルを参照する方法

第1引数の参照文字列には参照したいセル番地を、第2引数には参照形式としてA1形式かR1C1形式を指定します。A1形式を指定する場合は「TRUE」を、R1C1形式を指定する時は「FALSE」を入力すればOKです。

「=」を入力して別シートのセルを参照する方法

R1C1形式では全て数字でセル番地を指定できるので、特にマクロ(VBA)を使用する時に便利です。注意事項としては、「=INDIRECT(A1)」など「”」をつけずにセル番地を入力すると、A1セルの中身が表示されるのではなく「A1セルに入力してあるセル番地」のセルの中身が表示されることに気をつけましょう。

「=」を入力して別シートのセルを参照する方法

別シートの複数セルをまとめて参照する方法

最後に別シートの複数セルをまとめて参照する方法を説明します。同一シートの時と同じようにコピー&ペーストを行いますが、ペースト方法を指定する必要があります。

例えば「Sheet2」シートのB5からB10の範囲をコピーして、「Sheet1」シートのA1に貼り付けることを考えます。

別シートの複数セルをまとめて参照する方法

A1セルを右クリックするとメニューが表示されるので「リンク貼り付け(N)」を左クリックで選択しましょう。これで複数セルを参照モードで貼り付けすることができます。

別シートの複数セルをまとめて参照する方法

参照元の値を更新すると、貼り付けた箇所の値も自動で更新されるので試してみましょう。コピーを貼り付ける時に右クリックをせずにそのままペーストすると、「参照」ではなく単なる値のコピーになって値も更新されませんので気をつけましょう。

Excelで別シートの値を関数で参照する方法

Excel(エクセル)では関数の引数にセルの値を参照する形で使用することがあります。同一シート内だけでなく、別シートのセルも参照可能ですのでやり方を見てみましょう。

  • 関数の引数で別シートの値を参照する方法
  • VLOOKUP関数で別シートの値を参照する方法

関数の引数で別シートの値を参照する方法

Excel(エクセル)では同一シートのセルだけでなく別シートのセルを参照して関数の引数に値を引き渡せます。

関数の引数でよく参照して使用されるものに、「検索値」や「範囲」があります。例えばSUM関数である範囲の合計値を求める時、「Sheet1」シートのセルに入力されている関数で同一シートのA1からA5までを合計する場合「=SUM(A1:A5)」と記述します。

関数の引数で別シートの値を参照する方法

一方「Sheet2」のA1からA5までを合計して「Sheet1」シートに結果を表示させる場合は「=SUM(Sheet2!A5:A10)」となります。同一シートの場合はシート名を省略していると考えることもできるでしょう。

関数の引数で別シートの値を参照する方法

絶対参照のやり方も、同一シートのセルと同様にセル番地の前に「$」を付けることで値を固定することができます。

VLOOKUP関数で別シートの値を参照する方法

Excel(エクセル)でも使用頻度の高い関数、VLOOKUP関数で別シートの値を参照する方法を具体的に解説するので見ていきましょう。

VLOOKUP関数とは、検索したデータに該当した行の指定列からデータを取り出す関数です。書式は「=VLOOKUP(検索値,範囲,列番号,検索方法)」で引数は4つとなります。

VLOOKUP関数で別シートの値を参照する方法

例では「Sheet1」シートにVLOOKUP関数を入力し、「Sheet2」シート上の「B3からE12」の範囲にある表の値を取得してみましょう。検索値を「Sheet1」の「B2」列番号を3、検索方法を「FALSE」とすると「=VLOOKUP(B2,Sheet2!B3:E12,3,FALSE)」となります。

VLOOKUP関数で別シートの値を参照する方法

Excelで別シートを参照できない原因・エラー対処方法

Excel(エクセル)で別シートのセルをうまく参照できないことがあります。ここでは表示されるエラー別に考えられる原因と対処方法を紹介していますので、1つずつ見ていきましょう。

  • 別シート参照時に#N/Aエラーが表示される場合
  • 別シート参照時に#REF!エラーが表示される場合

別シート参照時に#N/Aエラーが表示される場合

#N/A は「使用可能な値がない」というエラー値です。例えばVLOOKUP関数で検索値が見つからない場合に#N/Aエラーが返されます。

別シート参照時に#N/Aエラーが表示される場合

VLOOKUP関数で検索値が見つからない原因としてよくあるのが次のような場合です。

  • 範囲の中に存在しない検索値を指定してしまっている
  • 半角と全角が異なるなど検索値が間違っている
  • 範囲を相対参照で記述してしまったため、関数をコピー&ペーストした時に範囲がズレてしまった
  • シート名を間違えたりシート名の後に「!」をつけるのを忘れた

このように原因が分かっている場合は、それぞれ間違っている箇所を修正しましょう。一方原因が分かっていない場合でもIFERROR関数を使えば#N/A を表示させないようにすることが可能です。

例えば「=IFERROR(VLOOKUP(),””)」のように記述しておけば、エラーが出ていない時は第1引数で指定された値が、エラーが出たら第2引数で指定された値が表示されます。ここでは、エラーが出た場合空白(何も表示されない)となります。

別シート参照時に#N/Aエラーが表示される場合

#N/A が出ないようにするにはIFERROR関数を使えばエラーを非表示にできると覚えておきましょう。

別シート参照時に#REF!エラーが表示される場合

次に#REF!エラーが表示される場合の対策を見てみましょう。#REF!エラーは数式が無効なセルを参照している場合に表示されます。

多くの場合、このエラーは数式で参照されていたセルが削除されたり、上書きされた時に発生します。例えば「=VLOOKUP(Sheet2!B5,A2:D11,3,FALSE)」という関数が入力されていた時、誤ってSheet2のセルB5を削除してしまうと「#REF!」と表示されます。

別シート参照時に#REF!エラーが表示される場合

エラーの解消方法としては、参照元のセルをたどってみて問題ないか確認することです。値が削除されていたり、数値を入力すべきところに文字列で上書きされていたりしないか確かめてみましょう。もし不適切な値となっていれば、再度正しい値を入力してください。

特に別シートを参照している時、参照されていることに気付かずに別シートのセルを操作してしまうことがありますので注意しましょう。

何か操作した直後に#REF!エラーが表示された場合、「Ctrl」+「z」を押すと操作を元に戻すことができるのでエラーがすぐに解消しますので試してみてください。

別シート参照時に#REF!エラーが表示される場合

別シート参照時に#VALUE!エラーが表示される場合

最後に#VALUE!エラーが表示された場合について原因と対策を説明します。#VALUE!エラーは参照している値では計算ができないことを意味しています。 よくある原因として、参照している値に文字列が含まれていると「#VALUE」エラーが表示されます。

別シート参照時に#VALUE!エラーが表示される場合

特に注意が必要なのは、一見数字に見えるセルでも文字列となっている場合があることです。数字がセルに対して左詰めで表示されていたら文字列となっている可能性があります。そのような場合、該当するセルを選択状態にしたまま「数値の書式」の欄を確認してみてください。

「数値の書式」が「文字列」になっていたら「数値」に書式を変更しましょう。これで文字としてではなく、数値として数字を取り扱うことができるようになります。

別シート参照時に#VALUE!エラーが表示される場合

また文字列が入っているセルを「0」とみなすことで計算することが可能となります。Excel(エクセル)のファイル→オプション→詳細設定と進み「計算方式を変更する(F)」にチェックを入れましょう。

別シート参照時に#VALUE!エラーが表示される場合

これで文字列の入っているセルは0とみなされるようになりますが、計算した結果が「0」となるわけではありません。あくまで便宜的なものだということに注意しましょう。

Excelで別シートを参照する方法を改めておさらい

Excel(エクセル)で別シートにあるセルを参照する方法を紹介しました。セル番地の前に「シート名!」を付ければ、基本的には同一シートのセルの参照方法と同様に扱うことができます。セルに別シートのセルの参照結果を反映させるには次の方法があるので覚えておきましょう。

  • イコール「=」を使う
  • INDIRECT関数を使用する
  • 右クリックのペーストで複数セルをまとめて参照する

リテラアップアプリのご利用について、法人の方は下記フォームよりお問い合わせください。

(Excel,WordなどOffice製品やPC関連の技術的な質問にはお答えできかねます。ご了承ご了承ください。)