• ベストアンサー

EXCEL 偽の場合はセルの内容を変えない

IF関数を組み合わせて式を作りましたが、条件が合わないときはセルの内容を変えないで欲しいのです。方法がありますか? B2の式=IF($A$1>B1,A1*B1,そのまま)みたいな つまり、FALSEや空白を返すのではなく内容を変えないで欲しいのです 素人の質問ですみません。

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

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

「そのまま」とは具体的にどういう状況を「そのまま」なのか説明がありませんが。 >方法がありますか? とりあえずご質問の直接の回答としては 手順: ご利用のエクセルのバージョンも不明のご相談ですが、バージョンに応じた方法でエクセルのオプションの 「反復計算を行う」 のチェックを入れる A1とB1に適当な数字を記入する B2に =IF($A$1>B1,A1*B1,B2) と記入する A1とB1をてきとーに変更する と出来ます。

aperun8
質問者

補足

スゴイ!! 思ったような表が出来ました。 EXCEL のバージョンは 2013 です。 「反復計算を行う」ってのが可能なことを今知りました。 夜分遅くにも関わらず、ありがとうございました。

その他の回答 (2)

  • Cupper-2
  • ベストアンサー率29% (1342/4565)
回答No.3

自身のセルを参照して自身の値を決定することは一部の関数を除いて不可能です。 循環関数になってしまうからです。 *CELL関数は循環しませんので自身のセルを参照して自身のセルの値を決定することができます。 ですので質問のケースではマクロを使わなければ実現不可能なんです。 前の回答者さんが提案しているように作業用のセルを作ってその値を参照して決定することを検討しましょう。

aperun8
質問者

お礼

keithin さんのお答えでバージョンによっては「反復計算を行う」ってのが出来ることがわかりました。 夜分遅くにも関わらず、ありがとうございました。 これで解決とさせていただきます。

  • bin-chan
  • ベストアンサー率33% (1403/4213)
回答No.1

式・関数で実現可能か?でしょうか セルB2が、別セルを参照してるなら、可能 セルB2が、値を持っているなら、不可能 代替案は別セル(exセルC2)に上記の式を設定し、「そのまま」をB2に置換。 で、列Bを非表示にすれば「見かけ上は実現できた」になります。 VBAを使えば実現可能

aperun8
質問者

補足

早速のご回答ありがとうございます。 出来ればVBAを使わずに関数で処理したいと思っています。 「そのまま」のセルには別のデータシートのセルからINDEXとSMALLを使って参照した結果が入っています。 他の検索値を入力すると結果が変わってしまうので困っています。 シートの若い行から「値」貼り付けで確定させて行けばいいんですが・・

関連するQ&A