エクセルを使っていると、シートに入力されるデータを別のシートに自動で反映させたい場合がよくあります。
そんな時に、セルのデータを別シートに自動で反映させる4つの方法を紹介したいと思います。
この記事の内容
- 1. 『リンク貼り付け』を使って、別シートのデータを自動で反映させる。
- 2. 式を使って、別シートのデータを自動で反映させる。
- 3. 入力規則のリストを別シートに反映させる。
- 4. 表をまるごと反映させる。
- 5. グラフを反映させる。
- 未入力データが『0』で表示させないようにする。
今回紹介する『入力規則のリスト』以外の2つの方法は、操作が違うだけで参照式を反映先に埋め込みます。
もちろん、反映するデータは数値であろうが文字列であろうが構いません。
また、未入力データはそのまま反映させると『0』(又は、1900/1/0)と表示されてしまうので、『0』を表示させない方法もあわせて紹介します。
別シートのデータを自動で反映させる方法(リンク貼り付け)
これから紹介するのは、『Sheet2』にある都道府県の名前を『Sheet1』の別シートに反映させる場合の手順です。
この記事では、反映先シート名、反映元のシート名は、それぞれ以下としています。
- 反映先シート(データがない方) → 『Sheet1』
- 反映元シート(データがある方) → 『Sheet2』
まずはマウス操作だけでできる、『リンク貼り付け』で別シートの入力データを反映させる方法から。
最初に、反映元(Sheet2)の入力データを全て選択して、コピー(『CTRL』+『C』)します。
反映先のシート(Sheet1)に切り替えてから最初のセルを選択して、右クリックします。(①)
メニューが表示されるので『形式を選択して貼り付け』を選択。(②)
『リンク貼り付け』を選択して『OK』をクリック。
※『CTRL』+『ALT』+『V』のショートカットキーを使えば、一発でこの画面を表示させることもできます。
これで、一気に入力データを反映させることができました。
別シートのデータを自動で反映させる方法(式を入力)
続いては、反映先のセルに式を入力する方法。
反映先シート(Sheet1)のセルで=(イコール)を入力。
次に、データが入力されている反映元シート(Sheet2)を選択して、入力データがある最初のセルをクリック。
『ENTER』キーを押すと、自動的にシートが切り替わって入力データが反映できたことがわかります。
あとは、次の『フィルコピー』を使って、他のセルも同じように反映させます。
最初のセルの右下にある小さい■のフィルハンドルをつまみます。(マウスが十字の形に変化)
フィルハンドルをつまんだまま、最後のセルのところまでドラッグしていきます。
これで別シートの入力データを全て反映させることができました。
別シートにドロップダウンリスト(入力規則)を作って反映させる
別シートへ反映させる時によく使うものに、『データの入力規則で作ったドロップダウンリスト』というのがあります。
下のエクセルのように、リスト形式のセルを別の専用シートに作っておいて、それを他のシートに反映させるというやり方ですね。
ドロップダウンリストを別シートに反映させる方法は、次の記事で詳しく書いているので、ぜひ参考にしてください!
表をまるごと別シートに反映させる
ここまでシート内の一部のデータを反映させる方法でしたが、表内のデータや見出しなどの書式や罫線、列幅もまるごと別シートに反映させることができます。
次の記事では、『リンク貼り付け』という貼り付けで『表をまるごと別シートに反映させる方法』を書いています。
反映元の表内の書式(セルの背景色、文字の色、罫線など)を変更した時に、反映先に自動反映されなくてもいい場合は、こちらの方法がおすすめです。
次の記事は、『リンク図』という貼り付けで『表をまるごと別シートに反映させる方法』を書いています。
反映元の表内の書式(セルの背景色、文字の色、罫線など)を変更した時に、反映先に自動反映して欲しい場合はこちらがおすすめ。
グラフを別シートに反映させる
グラフも例外なく別シートに反映させることができ、手順は普通にコピー&ペーストするだけでOKです。
もし、グラフの書式(グラフの色や文字の色)も反映させたい場合は、『カメラ機能』を使います。
未入力データが『0』と表示されないようにする
ここまで紹介した方法では、1つ問題があります。
それは、反映元に未入力データがあった場合は、反映先には『0』(又は、1900/1/0)と表示されてしまうこと。
↓この未入力データをそのまま反映させると『0』と表示されてしまう。
IF関数を使って未入力データを空白(空)で表示させる
もし、『0』(又は1900/1/0)を表示させたくない場合は、次のIF関数の手順を試して下さい。
反映先のシート(Sheet1)のセルに次のIF関数を入力します。
=IF(Sheet2!A1="","",Sheet2!A1)
これで最初のセルにIF関数を入力できたので、あとはフィルコピーするだけです。
(フィルコピーの手順は先の方で紹介しているので、そちらを参考にしてください)
これで、未入力データでも『0』(又は1900/1/0)と表示されなくなります。
別シートのデータを自動反映させる方法のまとめ
まとめ
- 別シートにデータを反映させるたい場合は、『リンク貼り付け』と、参照先の入力(式)の2つの方法がある。
- 未入力データの『0』を表示させないようにするには、IF関数を使う。
別シートの入力データを反映させる方法は、今回紹介したように2つあります。
どちらの方法でも反映させることができるので、使いやすい方で試して下さい。
今回は、セルの一部だけを反映させる方法を紹介しましたが、列まるごと、行まるごとを反映させたい場合でも同じようにできます(選択範囲を列や、行にするだけ)
ぜひ有効利用してください!