• ベストアンサー

Excelのセル参照について

参照元のセル位置を移動などで動かすと、参照先も「参照元の移動先のセル番地」に変更されますよね。 参照元の値が移動しても常に同じセル番地を参照するようにするにはどうしたらよろしいでしょうか。

質問者が選んだベストアンサー

  • ベストアンサー
  • s-mariko
  • ベストアンサー率64% (33/51)
回答No.2

INDIRECT 関数を使います。 A1 を常に参照したい場合は、 =INDIRECT("A1") とします。

kalmit
質問者

お礼

うまくいきました!大変助かりました。ありがとうございます。

すると、全ての回答が全文表示されます。

その他の回答 (8)

  • april21
  • ベストアンサー率42% (91/216)
回答No.9

☆brogieさんへ >私のExcelでは「=INDIRECT("A1") 」(s-marikoさんの回答)はA1を参照しているときは、移動してもA1を参照しています。 A1=1 B1=INDIRECT("A1")+5 なってるとして INDIRECT関数を使って再計算されるまではA1は参照するセルを示すものではなく文字列と認識される為です。 >A列を移動してもその移動先の列の参照になってしまいます。これは私のExcelの設定のせいでしょうか? ↓で書いたのと同じような事ですがA列を切り取ったりした場合は他のセルとの関連性も失わずに 移動します。(従姉が結婚して名前が変わっても○○さんは従姉という関係であるのと同じ) (この機能がないと列を挿入した場合など参照先が変わってしまうので参照させてる数式などを 全て修正しなくてはいけなくなってしまうので便利だと思います。) 移動(移ってしまったら元の場所に存在しないのが普通ですから)するのではなく コピーして貼り付ける(元のセルは存在するので他のセルとの関連性は保持) で、A列のデータを削除すれば結果的にはA1を移動した事になるのでは?

すると、全ての回答が全文表示されます。
  • april21
  • ベストアンサー率42% (91/216)
回答No.8

>常に同じセル番地を参照するようにするにはどうしたらよろしいでしょうか とあったので早とちりしてしまいました。 >A1を移動したとき、移動先を参照してしまうのではないでしょうか A1=1 B1=A1+5 なってるとして このA1のセルをD1に移動するとB1=D1+5になってしまうと言うことですね。 この場合$を付ける必要はありません。 A1をコピーして移動したいセルに移動させて元のセル(A1)を削除する。 こうするとA1のデータが変更されただけで参照先が移動した事にならないので B1=A1+5 のままになるはずです。

すると、全ての回答が全文表示されます。
  • april21
  • ベストアンサー率42% (91/216)
回答No.7

>A1を移動したとき、移動先を参照してしまうのではないでしょうか。 koutakaさんも書かれてますが・・・。 私もコピーして移動させて元を削除すれば問題ないと思います。 名前ほ定義した場合でも同じで、切り取ったて貼り付けたりというような移動のさせ方 をすれば移動元は存在しなかった事になるから・・。 INDIRECT関数の場合は文字列(A1)をINDIRECT関数を介して参照形式にしてるから 参照先が無くなった事にはならない。

すると、全ての回答が全文表示されます。
  • koutaka
  • ベストアンサー率47% (18/38)
回答No.6

No.5 brogieさん >しかし、A1をクリックして、F4をおすと$A$1となり、絶対参照になります。 >ここまではよいですが、A列を移動してもその移動先の列の参照になってしまいます。 >これは私のExcelの設定のせいでしょうか? Excelの仕様です。 Excelのヘルプ(2000)には以下のように記載されています。 ■セル内の数式の調整 セルを移動しても、移動したセルの数式は調整されません。 ただし、移動したセルを参照する数式は、新しい場所に移動したセルを参照するように調整されます。 ■個人的な意見 循環参照などを回避する為だと思います。 移動した元の場所を参照しても意味がないし、もし元の位置を参照したければ 値や数式をコピーしてくればいいのではと考えます。 ※[F4]キー押すと絶対参照⇔相対参照になるの初めて知りました。

すると、全ての回答が全文表示されます。
  • brogie
  • ベストアンサー率33% (131/392)
回答No.5

 このサイトなかなかタメに成ります。何時も利用させてもらっています。 下には、2通りの回答が書かれていますが、私のExcelでは「=INDIRECT("A1") 」(s-marikoさんの回答)はA1を参照しているときは、移動してもA1を参照しています。  しかし、A1をクリックして、F4をおすと$A$1となり、絶対参照になります。ここまではよいですが、A列を移動してもその移動先の列の参照になってしまいます。これは私のExcelの設定のせいでしょうか? 何だか質問者になってしまいました... どうかよろしくお願いします、参考にさせてもらいますから。

kalmit
質問者

補足

私が試してみると、絶対参照も相対参照も、INDIRECT関数だと移動してもA1を参照しました。 私のほうは納得しました。色々とありがとうございます。

すると、全ての回答が全文表示されます。
  • april21
  • ベストアンサー率42% (91/216)
回答No.4

koutakaさんの回答が一部消えてるようなので補足します 1行だけ常に参照し列は増減させたい場合 A$1と入力 ←ここが抜けちゃってるみたいです。 Aとかアルファベットのは列で数字は行ですね。 固定したい方の左側に$を付ける。 常に同じセルを参照させるには両方付ける。 セルやセル範囲に名前を付けることも出来ますのでヘルプで「名前」とかで 調べてみると良いかも?

すると、全ての回答が全文表示されます。
  • koutaka
  • ベストアンサー率47% (18/38)
回答No.3

セルの絶対参照を使います たとえば ”セルA1”を常に参照したい場合は $A$1 と入力します A列だけ常に参照し行は増減させたい場合 $A1 と入力 1行だけ常に参照し列は増減させたい場合 ■$を列または行の前に入力すればコピーしてもセルの番地は増減されません

すると、全ての回答が全文表示されます。
  • april21
  • ベストアンサー率42% (91/216)
回答No.1

ヘルプの絶対参照より 特定の位置にあるセルを常に参照する絶対参照を使うことができます。絶対参照を作成するには、"$A$1" のように、文字や番号の前にドル記号 ($) を挿入します。

kalmit
質問者

補足

ありがとうございます。絶対参照も試してみたのですが、A1を移動したとき、移動先を参照してしまうのではないでしょうか。

すると、全ての回答が全文表示されます。

関連するQ&A