• ベストアンサー

【再掲載】Excel 条件で足すセルを自動的に変える方法

整理しないまま質問を掲載してしまったので、画像付きで再度ご質問を掲載させて頂きます。 ///////////////////////////// A1に“0かマイナス数値”が入る場合には、H1に「=C1&D1&E1&F1」という結果。 A2に“1以上の数値”が入る場合には、H2に「=C21&E2&F2&G2」という結果。 ///////////////////////////// という感じでA列セルの内容によって、 足す(&)対象にするセルを H3以降を 上記ルールに従って自動的に結果を出したいと思っています。 この様にする場合には、どのような関数を書けば宜しいのでしょうか。 すみませんがよろしくお願い致します。

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

  • ベストアンサー
  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.2

H1セルに次の式を入力して下方にオートフィルドラッグします。 =IF(AND(MOD(ROW(A1),2)=1,A1<=0,A1<>""),C1&D1&E1&F1,IF(AND(MOD(ROW(A1),2)=0,A1>=1,A1<>""),C1&E1&F1&G1,""))

kazuya88
質問者

お礼

上記の補足に書かして頂いた内容の続きになります。 =IF(AND(A12<=0,A12<>""),C12&D12&E12&F12,IF(AND(A12>=1,A12<>""),C12&E12&F12&G12,"")) としたら、空欄がなくなり求めていたものになりました! いろいろ調べてみましたが、セルの番号を抽出して 2 で割った時の余りが 1 の時に空欄になるということだったんですね。 勉強になります。

kazuya88
質問者

補足

ご回答ありがとうございます。 試させていただいたのですが、H列が所々空欄になってしまいます。 H1 に入力(コピペ)しまして、オートフィルドラッグをしました。 テストで下記の数値をA列に入力して試してみたのですが、空欄になってしまいました。 2(*) 84 0 -9(*) -3 2 2(*) 0(*) (*)は H列 が空欄 因みにオートフィルドラッグした13行目の結果は、 =IF(AND(MOD(ROW(A13),2)=1,A13<=0,A13<>""),C13&D13&E13&F13,IF(AND(MOD(ROW(A13),2)=0,A13>=1,A13<>""),C13&E13&F13&G13,"")) となりました。

その他の回答 (2)

  • chem_taro
  • ベストアンサー率32% (33/101)
回答No.3

ごめんなさい・・・#1いろいろ間違ってました。 ようするに A列が0かマイナスだったら、C列&D列&E列&F列    1以上(プラス)だったらC列&E列&F列&G列 の結果をH列に出したいってことですよね。 であれば H1に =IF(A1>0,C1&D1&E1&F1,C1&E1&F1&G1) と書いて、H2以降はフィルハンドルでコピーしていけば H2:=IF(A2>0,C2&D2&E2&F2,C2&E2&F2&G2) H3:=IF(A3>0,C3&D3&E3&F3,C3&E3&F3&G3) ・ ・ ・ と入っていくと思います。

kazuya88
質問者

お礼

前回のご質問からご回答いただきありがとうございます。 いろいろと試してみた結果、正しい結果が得られました。

  • chem_taro
  • ベストアンサー率32% (33/101)
回答No.1

ようするに A列が0かマイナスだったら、「C1&D1&E1&F1」    1以上(プラス)だったら「C1&D1&E1&F1」 の結果をH列に出したいってことですよね。 であれば H1に =IF(A1>0,C1&D1&E1&F1,C1&D1&E1&F1) と書いて、H2以降はフィルハンドルでコピーしていけば H2:=IF(A2>0,C2&D2&E2&F2,C2&D2&E2&F2) H3:=IF(A3>0,C3&D3&E3&F3,C3&D3&E3&F3) ・ ・ ・ と入っていくと思います。