エクセルの関数をコピーする方法

4 方法:ドラッグして複数のセルに関数をコピーする関数をコピーして複数のセルに貼り付ける関数を正確にコピーする相対参照と絶対参照を使いこなす

エクセルを使えば、行や列全体の関数をコピーすることができますが、毎回予想通りの計算結果が出るわけではありません。予想と違う結果がでたり、#REFや/DIV0などのエラーが出たら、絶対参照や相対参照を理解して、何がおかしいのかを確認しましょう。とはいえ、コピー&ペーストで5000行のセルを編集するわけではないので、心配無用です。ここでは指定した箇所に基づいて自動で関数を更新したり、関数の意味を変えずにそのままコピーする方法を紹介します。

1
ドラッグして複数のセルに関数をコピーする

  1. 1
    1つのセルに関数を入力する 他の関数を入力するときと同様に、「=」から使いたい関数や数式を入力します。ここではシンプルに列Aと列Bを合計するスプレッドシートを例として利用します。


    Example Spreadsheet
    Column A Column B Column C
    row 1 10 9 =A1+B1
    row 2 20 8
    row 3 30 7
    row 4 40 6
  2. 2
    Enterキーを押して数式を実行する キーボードのenterを押すと、関数が実行されます。下記の例でいうと(19)という結果だけが返ってきますが、スプレッドシート上には関数が保存されています。


    Example Spreadsheet
    Column A Column B Column C
    row 1 10 9 19
    row 2 20 8
    row 3 30 7
    row 4 40 6
  3. 3
    セルにある右下の角をクリックして複製する 編集したセルの右下にカーソルをあてると、「+」マークが出現します。 [1]
  4. 4
    ドラッグしながらコピーしたい列や行まで広げる マウスのボタンを押し続けたまま、変更を加えたい列もしくは行までカーソルを持っていきます(ハイライト表示)。予め入力した関数が選択したセルにも自動的に入力されます。相対参照によって、参照元のセルから予測して自動的に内容が入力されます。下記が先程のスプレッドシートで関数が参照された場合の例です。


    Example Spreadsheet
    Column A Column B Column C
    row 1 10 9 =A1+B1
    row 2 20 8 =A2+B2
    row 3 30 7 =A3+B3
    row 4 40 6 =A4+B4


    Example Spreadsheet
    Column A Column B Column C
    row 1 10 9 19
    row 2 20 8 28
    row 3 30 7 37
    row 4 40 6 46
  5. 5
    「+」をダブルクリックして列全体に入力する 毎回クリックしてドラッグする代わりに、マウスを右下の角に合わせ、「+」マークが出たらダブルクリックしてみましょう。関数を列全体に入力することがきます。 [2]
    • 列の途中に空のセルがあると、そこで入力は止まります。参照元のデータとの間に空のセルがある場合は、このステップを繰り返して入力しましょう。

2
関数をコピーして複数のセルに貼り付ける

  1. 1
    1つのセルに関数を入力する 他の関数を入力するときと同様に、「=」から使いたい関数や数式を入力します。ここではシンプルに列Aと列Bを合計するスプレッドシートを例として利用します。


    Example Spreadsheet
    Column A Column B Column C
    row 1 10 9 =A1+B1
    row 2 20 8
    row 3 30 7
    row 4 40 6
  2. 2
    Enterキーを押して数式を実行する キーボードのenterを押すと、関数が実行されます。下記の例でいうと(19)という結果だけが返ってきますが、スプレッドシート上には関数が保存されています。


    Example Spreadsheet
    Column A Column B Column C
    row 1 10 9 19
    row 2 20 8
    row 3 30 7
    row 4 40 6
  3. 3
    セルをクリックしてコピーする(「CTRL」+「C」)
  4. 4
    コピーしたい関数が含まれたセルを選択し、ドラッグしながら、上下にマウスもしくは矢印キーで貼り付ける範囲を指定する 右下の角をドラッグする方法と違って、コピー元のセルとコピー先のセルが隣接していなくても使えます。
  5. 5
    貼り付ける(「CTRL」+「V」)

3
関数を正確にコピーする

  1. 1
    参照元のセルを変更することなく、関数をコピーする 関数で埋め尽くされたスプレッドシートを「そのまま」コピーしたいという場合もあるでしょう。絶対参照(下記「セルの参照」で詳しく説明します)のセル全てを編集したり、元に戻したりするのは大変です。この方法を使えば参照元のセルをいじらずに、関数を入力することができます。[3]下記が例となるスプレッドシートで、C列の内容をD列にコピーしたいとします。


    Example Spreadsheet
    Column A Column B Column C Column D
    row 1 944 Frogs =A1/2
    row 2 636 Toads =A2/2
    row 3 712 Newts =A3/2
    row 4 690 Snakes =A4/2
    • もし1つのセルにだけコピーしたい場合は、このセクションの一番最後「他の方法を試す」まで読み飛ばしてください。
  2. 2
    検索ウィンドウを開く  エクセルのほとんどのバージョンでは、上部にあるホームタブを押せば、「編集」セクションの中に 検索と選択 ボタンがあるはずです。[4]もしくはショートカットキー「CTRL」+「F」でも開きます。
  3. 3
    「=」を検索し、他の記号で置き換える 「=」を入力し、「全て検索する」をクリック、「置き換える」の箇所に別の記号を割り当てます。これにより「=」ではじまる全ての関数を、特定の記号ではじまる文字列に変換できます。スプレッドシート内で使われていない記号に置き換えるよう注意してください。例えば、「#」や「&」、もしくはそれらを組み合わせた「##&」といった記号に置き換えましょう。


    Example Spreadsheet
    Column A Column B Column C Column D
    row 1 944 Frogs ##&A1/2
    row 2 636 Toads ##&A2/2
    row 3 712 Newts ##&A3/2
    row 4 690 Snakes ##&A4/2
    • 「*」もしくは「?」を使うとこの後が難しくなるので、使用しないようにしましょう。
  4. 4
    セルをコピー&ペーストする コピーしたいセルを選択し、他の箇所に貼り付けます。これらは関数として認識されないため、一言一句変わらずにコピーすることができます。


    Example Spreadsheet
    Column A Column B Column C Column D
    row 1 944 Frogs ##&A1/2 ##&A1/2
    row 2 636 Toads ##&A2/2 ##&A2/2
    row 3 712 Newts ##&A3/2 ##&A3/2
    row 4 690 Snakes ##&A4/2 ##&A4/2
  5. 5
    もう一度「検索と選択」を使って変更箇所を置き換える コピーしたい関数をそのまま貼り付けることに成功したら、「検索と選択」を使って変更した箇所を元に戻しましょう。例のスプレッドシートでいえば、「##&」を検索し、もう一度「=」に置き換えることで、これらのセルが関数に戻ります。あとは通常通り編集を続けて問題ありません。


    Example Spreadsheet
    Column A Column B Column C Column D
    row 1 944 Frogs =A1/2 =A1/2
    row 2 636 Toads =A2/2 =A2/2
    row 3 712 Newts =A3/2 =A3/2
    row 4 690 Snakes =A4/2 =A4/2
  6. 6
    他の方法を試す 何らかの理由により上記の方法でうまくいかない場合、もしくは「全て置き換える」ことによって意図せず他のセルの内容を変えてしまうことが心配な場合は、他にも方法があります。
    • 参照元を変えずに1つのセルをコピーする場合は、セルを選択したら、画面上部にある数式バー(セル内ではありません)に表示されている数式をコピーします。esc キーを押して数式バーを閉じ、必要な箇所に関数を貼り付けましょう。[5]
    • Ctrl` (通常@と同じキー)を押して、数式ビューモードにします。関数をコピーして、NotepadやTextEditといったエディタに貼り付けます。もう一度これらをコピーし、必要な箇所に貼り付けましょう。[6] もう一度 Ctrl` を押して、通常モードに戻します。

4
相対参照と絶対参照を使いこなす

  1. 1
    相対参照を使う エクセル関数では、「セルの参照」によって、セルを指定します。直打ちしてもいいですし、関数に使いたいセルをクリックすることでも指定できます。例えば、A2セルを参照する関数のスプレッドシートは下記のようになります。


    相対参照
    Column A Column B Column C
    row 2 50 7 =A2*2
    row 3 100
    row 4 200
    row 5 400
  2. 2
    なぜ相対参照と呼ばれるのか理解する エクセル関数における相対参照は、相対的に同じ位置にあるとみなすセルを指定するときに使います。例えばC2セルに「=A2」という関数が適用されていた場合、相対参照においては2個左の値を参照するという意味になります。そのためこの関数をC4セルにコピーした場合、2個左であるA4の値を参照します。


    相対参照
    Column A Column B Column C
    row 2 50 7 =A2*2
    row 3 100
    row 4 200 =A4*2
    row 5 400
    • 行や列が異なるセルにコピーした場合でも同じです。例えばC1セルの関数を(上記の表にはない)D6セルにコピーした場合、エクセルは参照元をA2セルから1つ隣のC→D、5つ下の2→7にするか、B7に変更します。
  3. 3
    代わりに絶対参照を使う エクセルが自動で関数を変更するのが気に入らない場合、相対参照の代わりに絶対参照を使いましょう。変更したくない列もしくは行の頭に「$」を使うことで、どこにコピーしようと「絶対値」として値を保つことができます。[7]下記に元の値を太字にして、コピーした結果を反映させた表をいくつか紹介します。


    列が相対参照、行が相対参照の場合(B$1):
    1行目が絶対参照となっているので、常に1行目を参照します。
    Column A Column B Column C
    row 1 50 7 =B$3
    row 2 100 =A$3 =B$3
    row 3 200 =A$3 =B$3
    row 4 400 =A$3 =B$3


    列が絶対参照、行が相対参照のとき($B1):
    B列が絶対参照となっているので、常にB列を参照します。
    Column A Column B Column C
    row 1 50 7 =$B1
    row 2 100 =$B2 =$B2
    row 3 200 =$B3 =$B3
    row 4 400 =$B4 =$B4


    列も行も絶対参照のとき($B$1):
    B列1行目が絶対参照となっているので、常にB1を参照します。
    Column A Column B Column C
    row 1 50 7 =$B$1
    row 2 100 $B$1 $B$1
    row 3 200 $B$1 $B$1
    row 4 400 $B$1 $B$1
  4. 4
    F4キーを使って絶対参照と相対参照を切り替える 相対参照の関数をクリックして選択し、キーボードのF4を押すと、「$」が自動的に入力されたり、消去されたりします。絶対参照と相対参照、どちらか好みの方が選択されるまで F4を押し続け、選択できたらenterを押しましょう。[8]

ポイント

  • 関数を新しいセルにコピーした際に緑の三角形がでたら、エクセルがエラーを検知したという意味です。関数をもう一度見直し、間違いがないか確認しましょう。[9]
  • 意図せず「=」を「?」や「*」に置き換えてしまった場合、「?」と「*」を検索しても望んでいる結果は得られません。その場合は「~?」もしくは「~*」と検索しましょう。[10]
  • セルを選択してCtrl' (アポストロフィー)を押すと、直接上部に関数を入力することができます。[11]

注意事項

  • お使いのエクセルのバージョンによっては、記事内のスクリーンショットと異なる表示がされる場合があります。

記事の情報

カテゴリ: コンピューター | ソフトウェア

他言語版:

English: Copy Formulas in Excel, Русский: копировать формулы в Excel, Español: copiar fórmulas en Excel, Italiano: Copiare Formule in Excel, Deutsch: Formeln in Excel kopieren, Français: copier des formules dans Excel, Bahasa Indonesia: Menyalin Rumus di Excel, Português: Copiar Fórmulas no Excel, Nederlands: Formules kopiëren in Excel, العربية: نسخ الصيغ الحسابية في برنامج إكسل, हिन्दी: एक्सेल (Excel) में फॉर्मूला कॉपी करें (Copy Formulas in Excel), Tiếng Việt: Sao chép công thức trong Excel, ไทย: คัดลอกสูตร (Formulas) ใน Excel, Türkçe: Excel'de Formüller Nasıl Kopyalanır

このページは 56 回アクセスされました。

この記事は役に立ちましたか?