dポイントプレゼントキャンペーン実施中!

IF関数を組み合わせて式を作りましたが、条件が合わないときはセルの内容を変えないで欲しいのです。方法がありますか?

B2の式=IF($A$1>B1,A1*B1,そのまま)みたいな
つまり、FALSEや空白を返すのではなく内容を変えないで欲しいのです

素人の質問ですみません。

A 回答 (3件)

「そのまま」とは具体的にどういう状況を「そのまま」なのか説明がありませんが。





>方法がありますか?

とりあえずご質問の直接の回答としては

手順:
ご利用のエクセルのバージョンも不明のご相談ですが、バージョンに応じた方法でエクセルのオプションの
「反復計算を行う」
のチェックを入れる

A1とB1に適当な数字を記入する
B2に
=IF($A$1>B1,A1*B1,B2)
と記入する
A1とB1をてきとーに変更する


と出来ます。

この回答への補足

スゴイ!!

思ったような表が出来ました。

EXCEL のバージョンは 2013 です。

「反復計算を行う」ってのが可能なことを今知りました。

夜分遅くにも関わらず、ありがとうございました。

補足日時:2014/10/02 01:20
    • good
    • 0

自身のセルを参照して自身の値を決定することは一部の関数を除いて不可能です。


循環関数になってしまうからです。
*CELL関数は循環しませんので自身のセルを参照して自身のセルの値を決定することができます。

ですので質問のケースではマクロを使わなければ実現不可能なんです。
前の回答者さんが提案しているように作業用のセルを作ってその値を参照して決定することを検討しましょう。
    • good
    • 1
この回答へのお礼

keithin さんのお答えでバージョンによっては「反復計算を行う」ってのが出来ることがわかりました。

夜分遅くにも関わらず、ありがとうございました。

これで解決とさせていただきます。

お礼日時:2014/10/02 01:28

式・関数で実現可能か?でしょうか



セルB2が、別セルを参照してるなら、可能
セルB2が、値を持っているなら、不可能

代替案は別セル(exセルC2)に上記の式を設定し、「そのまま」をB2に置換。
で、列Bを非表示にすれば「見かけ上は実現できた」になります。


VBAを使えば実現可能

この回答への補足

早速のご回答ありがとうございます。

出来ればVBAを使わずに関数で処理したいと思っています。

「そのまま」のセルには別のデータシートのセルからINDEXとSMALLを使って参照した結果が入っています。

他の検索値を入力すると結果が変わってしまうので困っています。

シートの若い行から「値」貼り付けで確定させて行けばいいんですが・・

補足日時:2014/10/02 00:37
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています