• 公開日:

エクセルで別シートに自動反映する方法

エクセルではさまざまな方法を使って、シートの値を別シートに自動反映する設定ができます。

セル参照で自動反映する方法や、貼り付けの機能を使って自動反映する方法などをご紹介します。

複数のシート間でデータを共有したい場合や、効率よくデータ入力したい場合などにお役立てください。

エクセルで別シートに自動反映する方法

エクセルで別シートにセルの値を自動反映する方法について、以下の4通りの方法をご紹介します。

セル参照で自動反映する

Excelには「セル参照」という機能があり、例えば「A1セルの値を別シートのA1セルに表示する」といった操作が可能です。

セル参照は方法がシンプルなので、Excelを使い慣れていない方でも活用できます。

Sheet1とSheet2を用意する

Sheet1とSheet2を用意します。

今回はSheet1のA2セルの値を、セル参照でSheet2のA2セルに自動反映します。

イコールを入力して別シートを選択する

①Sheet2のA2セルに「=」と入力し、②「Sheet1」を選択します。

Sheet1のセルをクリックしてEnterを押す

Sheet1のA2セルを選択し、Enterを押します。

セル参照で自動反映する設定が完了した

するとSheet2のA2セルに、Sheet1のA2セルの値が反映されました。

数式バーを確認すると、Sheet2のA2セル内の数式が「=Sheet1!A2」になっていることが確認できます。

「=Sheet1!A2」は「Sheet1のA2セルの値を参照している」という意味の数式になります。

セルの内容を変更してみる

試しに自動的に値が変わるか、Sheet1のA2セルの値を変更してみましょう。

①A2セルに「佐藤」と入力しEnterを押して、②「Sheet2」を選択します。

Sheet2のセルの内容が自動範囲された

Sheet2のA2セルの値も自動的に「佐藤」に変化しました。

以上で、セル参照を使って別シートに値を自動反映できました。

リンク貼り付けで自動反映する

Excelの貼り付け機能の「リンク貼り付け」を使用して、セルの値を別シートに自動反映する方法をご紹介します。

コピーして別シートに移動する

今回はSheet1のA2セルからA3セルの値を、リンク貼り付け機能を使ってSheet2に自動反映します。

A2セルからA3セルを選択し、キーボードのCtrl+ Cを押してコピーします。

「Sheet2」を選択します。

別シートで範囲選択する

Sheet2のA2セルからA4セルを範囲選択します。

リンク貼り付けを選択する

「ホーム」タブ、②「貼り付け」の順に選択します。

②その他の貼り付けオプションから「リンク貼り付け」を選択します。

リンク貼り付けできた

リンク貼り付けによってSheet2に、Sheet1のA2セルからA3セルの値が貼り付けられました。

数式バーを確認すると、リンク貼り付けにより「=Sheet1!A2」という数式が自動入力されていることが分かります。

「=Sheet1!A2」は「Sheet1のA2セルの値を参照している」という意味の数式になります。

セルの内容を変更する

試しに自動反映の設定が正確にできているか確認してみます。

①Sheet1のA4セルの値に「名古屋」と入力してEnterを押します。

「Sheet2」を選択します。

自動的に反映される

Sheet2のA4セルの値も自動的に変更されました。

ドロップダウンリストの選択肢に自動反映する

Excelのドロップダウンリストとは、あらかじめ作成したリストから項目を選択して入力できるようにする機能です。

ドロップダウンリストには、別シートに作成した項目を選択肢として自動反映させることもできます。

表を作成する

まずはドロップダウンリストを設定する表を作成します。

今回はSheet1のA1セルからB8セルに作成しました。

ドロップダウンリストはB列に作成します。

表を作成する

次にSheet2にドロップダウンリストの項目となるリストを作成しておきます。

入力規則を選択する

今回はSheet1のB列にドロップダウンリストを作成して、Sheet2の選択肢リストを自動反映させます。

①ドロップダウンリストを設定するセル範囲(例:B2セルからB8セル)を選択します。

「データ」タブを選択し、②データの入力規則の「▼」ボタンを押します。

「データの入力規則」を選択します。

リストを選択する

「データの入力規則」ダイアログボックスが表示されました。

入力の種類で「リスト」を選択します。

元の値の「↑」ボタンを押します。

範囲選択する

Sheet2の項目が入力されたセル範囲(例:A2セルからA4セル)を選択し、Enterを押します。

OKボタンを押す

「データの入力規則」ダイアログボックスに戻ります。

「OK」ボタンを押します。

別シートのリストが選択肢として反映される

B列にドロップダウンリストが作成されました。

「▼」ボタンを押すと、Sheet2に入力した項目が選択肢に反映されていることがわかります。

リストの項目を変更する

①試しにSheet2のA4セルに「◎(二重丸)」と入力して、Enterを押します。

「Sheet1」を選択します。

自動的に反映される

ドロップダウンリストの「▼」ボタンを押してみると、選択肢の内容が二重丸に変更されていることがわかります。

マクロを使って自動反映する

Excelでマクロを設定して指定した範囲の値を、別のシートに自動範囲させることができます。

ボタンひとつで書式も含めて値をコピーできるため、同じ内容のシートを複数作成したい場合等に便利です。

表を用意する

今回は、マクロを使ってSheet1のA1セルからB5セルの値を、Sheet2に自動反映させます。

開発タブを表示する

今回はVBAを使って設定を行います。

VBAの設定には「開発タブ」が必要ですが、デフォルトでは表示されていないため下記の記事を参考に設定を行いましょう。

エクセルの開発タブを表示する方法

Visual Basicを選択する

マクロを設定します。

「開発」タブ、②「Visual Basic」の順に選択します。

標準モジュールを開く

「Microsoft Visual Basic for Applications」ダイアログボックスが表示されます。

「挿入」、②「標準モジュール」の順に選択します。

コードを貼り付ける

標準モジュールが挿入されました。

以下のコードをコピーして貼り付けます。

Sub 反映する()
    Dim wsSource As Worksheet
    Dim wsDestination As Worksheet
    Dim sourceRange As Range
    Dim destinationRange As Range
    
    Set wsSource = ThisWorkbook.Sheets("Sheet1")
    Set wsDestination = ThisWorkbook.Sheets("Sheet2")
    
    Set sourceRange = wsSource.Range("A1:B5")
    
    Set destinationRange = wsDestination.Range("A1")
    
    sourceRange.Copy destinationRange
End Sub

シート名を変更したい場合は、7行目と8行目のシート名をそれぞれ変更しましょう。

また、反映するセル範囲を変更したい場合は10行目の「("A1:B5")」のセル範囲を変更しましょう。

保存する

コードを貼り付けたら、「保存」を選択します。

マクロ有効ブックとして保存する

「名前を付けて保存」ダイアログボックスが表示されます。

保存場所(例:デスクトップ)を選択します。

③ファイルの種類で「Excel マクロ有効ブック」を選択し、④保存ボタンを押します。

マクロを選択する

以上でマクロの設定が完了しました。

シートに戻り、①「開発」タブ、②「マクロ」の順に選択します。

マクロを実行する

「マクロ」ダイアログボックスが表示されました。

作成したマクロ(例:反映する)を選択し、②「実行」ボタンを押します。

Sheet2に自動反映される

Sheet2にSheet1の値が反映されました。

マクロを使用する場合、Sheet1の元の値を変更してもSheet2の値は自動的に変更されません。

Sheet1の値を変更した場合は、再度マクロを実行してSheet2に変更後の値を反映しましょう。