循環参照を極める |
(5)循環参照で複数条件に合致するデータ数を求める 下準備: 1.メニューを「ツール」「オプション」と辿り、ダイアログボックスをだす。「計算方法」タブを選択。 2.「計算方法」タブを選択し「反復計算」にチェックをし、「最大反復回数」を100にして「OK」をクリック。 3.下図のようにB2に=IF(A1,A2+1,0)と入力する。 4.チェックボックスをワークシートに貼り付けて「コントロールの書式設定」から「リンクするセル」をA1にする。 |
【´・ω・`】:CountIf関数では設定できる条件の数はひとつなので60点以上の者の数を求めることはできるが60点以上70点未満の者の数を求めることはできない。そこでよくある手は多少、トリッキーだがSumProduct関数を使う手がよく用いられる。 (●`ε´●):こんな感じだ。セルE2に |
=SUMPRODUCT(((C2:C43)>=60)*((C2:C43)<70)) |
何て式を入力する。他には配列数式を使って |
{=SUM(((C2:C43)>=60)*((C2:C43)<70))} |
・・・とする。蛇足だが配列数式の{}は手入力しない。=SUM(((C2:C43)>=60)*((C2:C43)<70)) とセルに入力して確定時にShift+Ctrl+ENTERを同時に押下する。 |
【´・ω・`】:そして第三の手が循環参照による反復計算。SumProductや配列数式は質問掲示板でよく見かけるが循環参照はまだ珍しいと思う。下が循環参照による数式だ。 |
=IF(A1,IF(AND(INDIRECT("C" & $A$2)>=60,INDIRECT("C" & $A$2)<70),D2+1,D2),0) |
【´・ω・`】:これでチェックボックス「実行」にチェックをいれれば複数条件に合致するデータ数が求められるはずだ。 |
サンプルファイルはこちら:Ref_CountIfsをダウンロード |
(初出 2007/03/11)
最近のコメント