• ベストアンサー

エクセルでの関数の書き方

セルA1からF1があります。 A1がC1かD1で同じでかつ B1がC1かD1で同じ場合に、 D1の値をF1にセットしたいのですが、 どのように書けばよろしいでしょうか? EX. A1が1でB1が2の場合は C1がD1が1,2または2,1の場合のみ E1の値をF1にセットします。 COBOLで書くとこんな感じになると思います IF (A1=C1 OR A1=D1) AND (B1=C1 OR B1=D1) THEN MOVE D1 TO F1 END-IF. IF関数かAND関数を使用するような気がしますが、 思いつきません。 よろしくお願いいたします。 エクセル2000です。

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

  • ベストアンサー
noname#102878
noname#102878
回答No.1

セルF1に =IF(AND(OR(A1=C1,A1=D1),OR(B1=C1,B1=D1)),E1,"") と入れてみてください。 IF関数の最後の "" の部分は入れたい値に合わせて変更してくださいね。

Ref16570
質問者

お礼

お早いご回答ありがとうございました。 実際にやってみましたら、できました。

その他の回答 (2)

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

MOVE D1 TO F1 はMOVE E1 TO F1でしょうか。 参考までに、ものの本には AND(0<c1、c1<5)不等号も可能。 AND(ISNONTEXT(C1),ISEVEN(C2)) AND(ISNONTEXT(C1),ISODD(C2)) など「IS○○」(10種ぐらいある)のものも使えると載っていました。 30個まで()内に入れられるそうです。 上記ANDはORでも同じです。 入れ子AND(OR(・・)、AND(・・))も可能。

Ref16570
質問者

お礼

ご回答ありがとうございます。 >MOVE D1 TO F1 はMOVE E1 TO F1でしょうか。 間違っていました。すみません。 関数の一覧を調べてみましたが、ISNONTEXTは 載っていました。 ちょっと上級編のような気がしますが、 覚えるととても便利そうなので、 他の関数を含めもう少し調べてみます。

  • taka2456
  • ベストアンサー率29% (36/122)
回答No.2

コボル懐かしいですね A1=C1 OR A1=D1は =OR(A1=C1,A1=D1) (A1=C1 OR A1=d1) AND (B1=C1 OR B1=D1)は =AND(OR(A1=C1,A1=D1),OR(B1=C1,B1=D1))となります 結局 =IF(AND(OR(A1=C1,A1=D1),OR(B1=C1,B1=D1)),E1,"") となります 条件式が真のときE1を表示して、偽のときは何も表示しないようにしてます 一応あってると思いますがテストしてください

Ref16570
質問者

お礼

対象害の場合は0を表示したかったので、 ""を0に変更したところ、きちんとできました。 仕事上コボルから抜け出せません。 すばやいご回答ありがとうございました。

関連するQ&A