こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

【Excel】IF関数の論理式

FX(外国為替証拠金取引)で、今はExcelでpips計算をしているのですが、毎回下記の計算を手作業で行っています。

ただ、いちいち手作業で計算するのも面倒なので、関数を使って効率化を図りたいと思っています。

------

「もしA1セルが"X"の場合は"B1セル-C1セル"、もしA1セルが"Y"の場合は"C1セル-B1セル"」

「もしA1セルの文字列の最後の3文字が"XXX"の場合"B1セル*100"、もしA1セルの文字列の最後の3文字が"YYY"の場合"B1セル*10000"」

------

複雑すぎて、私には論理式がわからなかったのですが、これを関数にしていただければ大変助かります。
※勝手にIF関数だろうなあ、と思っているのですが、他の関数でも計算が可能であれば、何でもかまいません。


お手隙の際に、どうぞよろしくお願いいたします。


※ちなみに、今はやりの入学試験や資格試験の問題ではありませんので(笑)

投稿日時 - 2011-03-02 14:00:22

QNo.6561937

困ってます

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

あ、あ、あ、あ・・・間違えた。

=IF(A1="X",B1-C1,IF(A1="Y",C1-B1,""))

=IF(RIGHT(A1,3)="XXX",B1*100,IF(RIGHT(A1,3)="YYY",B1*10000,""))

カッコの位置が違ってました。すいません。

投稿日時 - 2011-03-02 14:10:33

お礼

わーい!( ´ ▽ ` )ノ

早速入力してみたら、瞬時に計算できました。
一応検算もしましたが、大丈夫みたいです!

本当にありがとうございます!!

余談ですが、こんなに早く正確な回答が返ってくると、某受験生もQAサイトを使いたくなる気持ちがわかりますね(笑)

投稿日時 - 2011-03-02 14:42:41

ANo.2

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(3)

ANo.3

一例です。
全条件を一つにまとめてみました。
=IF(A1<>"",(A1="X")*(B1-C1)+(A1="Y")*(C1-B1)+COUNTIF(A1,"*XXX")*B1*1000+COUNTIF(A1,"*YYY")*B1*10000,"")

投稿日時 - 2011-03-02 14:40:06

お礼

ご回答ありがとうございます。
ただ…すみません、うまくいきませんでした。

A1とかのセル情報は、ここで質問する際にわかりやすくするためのダミーですが、置換してもダメでした。
でも、たぶん私のやり方がどこかおかしいのだと思います。

No.1(No.2)さんのご回答で課題は解決しましたので、以後、この方法で計算したいと思います。

ご尽力に感謝します。

投稿日時 - 2011-03-02 15:48:07

ANo.1

>「もしA1セルが"X"の場合は"B1セル-C1セル"、もしA1セルが"Y"の場合は"C1セル-B1セル"」

>「もしA1セルの文字列の最後の3文字が"XXX"の場合"B1セル*100"、もしA1セルの文字列の最後の3文字が"YYY"の場合"B1セル*10000"」

これ、別々の話ですよね。

とりあえず上は

=IF(A1="X",B1-C1,IF(A1="Y",C1-B1),"")

=IF(A1="X",B1-C1,C1-B1)でも用は足りると思いますが、未記入だと変になることもあるので、XでもYでも無い時に空白、としておきました。

で、下も同じように

=IF(RIGHT(A1,3)="XXX",B1*100,IF(RIGHT(A1,3)="YYY",B1*10000),"")

こんな感じだと思いますけど。

投稿日時 - 2011-03-02 14:08:50

あなたにオススメの質問