• ベストアンサー

Excel 累計 規定値を超えたらカウント

Excelで以下の表があります。 名前 累計 5月 6月 7月 8月  【達成月】 A   4    1  0   2  1 B   2    0  0   0  2 C   1    0  1   0  0 目標値を2として、累計値が2を越えた「月」を 【達成月】に反映させたいと考えています。 例えばAの場合 7月が【達成月】の列に入るイメージです。 if関数やカウント等を織り交ぜて検討してみましたが、上手くいきません。 何卒ご教授よろしくお願いいたします。

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

  • ベストアンサー
  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.2

こんにちは! >2を越えた「月」を とありますが、2以上としての一例です。 余計なお世話かもしれませんが・・・ 2以上の月が複数あっても対応できる方が良いかな!って思い ↓のような感じでやってみました。 画像では5月~8月(C列~F列)までとしていますが、実際はもっと列数があると思います。 範囲指定部だけが異なるだけでやり方は一緒です。 画像ではH2セルに =IF(COUNTIF($C2:$F2,">=2")<COLUMN(A1),"",INDEX($C$1:$F$1,,SMALL(IF($C2:$F2>=2,COLUMN($A$1:$D$1)),COLUMN(A1)))) これは配列数式になってしまいますので、Shift+Ctrl+Enterで確定! この画面からコピー&ペーストする場合はH2セルに貼り付け後、数式バー内で一度クリック! 編集可能になりますので、Shift+Ctrlキーを押しながらEnterキーで確定! 数式の前後に{ }マークが入り配列数式になります。 このH2セルを列方向・行方向にオートフィルでコピーすると 画像のような感じになります。 ※ 2以上が2個以上ない!という前提であれば、H列だけでH2セルに =IF(COUNTIF(C2:F2,">=2"),INDEX($C$1:$F$1,,SUMPRODUCT((C2:F2>=2)*COLUMN(A1:D1))),"") (これは配列数式ではありません) これでで大丈夫だと思います。 参考になりますかね?m(_ _)m

bambu3340
質問者

お礼

ご回答ありがとうございました。 サンプル画像は帳票の参考にもなりました。 詳細にご教授いただき、感謝申し上げます。

すると、全ての回答が全文表示されます。

その他の回答 (2)

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

1行目にタイトル行で2行目からデータ A列に項目 B列に現時点の累計(=総計) C列からとりあえずF列まで個月の値があるとして =IF(B2>2,INDEX($1:$1,MIN(IF(SUBTOTAL(9,INDIRECT("rc3:rc"&COLUMN(C2:F2),FALSE))>2,COLUMN(C2:F2)))),"") と記入し,必ずコントロールキーとシフトキーを押しながらEnterで入力します。

bambu3340
質問者

お礼

ご回答ありがとうございました。 関数の組み合わせ、大変参考になりました。 活用させていただきます!

すると、全ての回答が全文表示されます。
  • KappNets
  • ベストアンサー率27% (1557/5688)
回答No.1

=IF(SUM(C2:C2)>2,"5月",IF(SUM(C2:D2)>2,"6月",IF(SUM(C2:E2)>2,"7月",IF(SUM(C2:F2)>2,"8月","")))) とG2に入れます。あとはドラッグするだけ。

bambu3340
質問者

お礼

ご回答ありがとうございました。 if関数の組み合わせ方は大変参考になりました! 他の場面でも活用させていただきます。

すると、全ての回答が全文表示されます。

関連するQ&A