• ベストアンサー

エクセルでセル参照した値を不動にする

A1の手打ちのセルの値をB1に埋め込み(表示し)たいです。その後、A1のセルの値が変わってもB1のセルの値を変えないようにするには、どの関数を使えばいいですか。

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

  • ベストアンサー
  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.3

ふつーにIF関数を使います。 手順: Excel2003まではツールメニューのオプションの計算方法タブ,Excel2007以降ではExcelのオプションの数式欄で,反復計算を行うチェックを入れます 最初はA1を空っぽにしておきます B1に =IF(A1="","",IF(B1="",A1,B1)) と数式を記入します。 A1セルでDeleteすると値を消し,次に入れた内容を保持します。

primxx
質問者

お礼

IF関数では出来ませんでした。ただ、ヒントとして徹底的に考えることが出来たので満足できました。VBAで実現できました。

その他の回答 (2)

  • imogasi
  • ベストアンサー率27% (4737/17070)
回答No.2

そんなことはエクセル関数では出来ません。 (1)こんなところへ質問などするよりは、B1をコピーして、編集ー形式を選択して貼り付けー値をやれば良いのです。 式は消えて値だけのセルになります。判ると思うが、同じ列や行などなら、セル範囲を指定してやれば1度に多数セルの「値}化が出来る。エクセルの常識のことです。 これで不便なことあるかな。 (2)VBAを使えば出来るが、しくみとして大げさだろう。

  • MackyNo1
  • ベストアンサー率53% (1521/2850)
回答No.1

基本的に関数ではご希望の操作はできません(どうしても実現したいならVBAを使用することになると思います)。 B1セルにA1セルの値を関数で表示していた場合は、B1セルをコピーしてそのまま右クリック「形式を選択して貼り付け」で「値」にするなどの処理が必要となります。 実際にどのような目的でA1セルの値をB1セルに表示させたいのかわかりませんが(目的によって最も効率的な操作が異なります)、通常このようなケースでは、B1セルでCtrl+Rのショートカット操作を行ってA1セルの値を自動的に入力するのが最も簡便で実戦的な対応だと思います。

primxx
質問者

お礼

早々の回答に感謝します。VBAで実現できました。

関連するQ&A