‖一括処理部品集2‖dosuu1.html 《戻る》 《玄関へ》
《 度数処理をおこなう 1 》
【内容】
任意表の任意項目(数値型)を対象として、用意した度数表に
各階級の度数を入力します。
【用例】
名札 度数処理
項目集計 &項目名A
@
条件 (&満点="") &満点=#切り上げ(#切り上げ(&最大値/&階級幅,0)*&階級幅,0)
&回=#切り上げ((&満点-&最小値)/&階級幅,0) A
ジャンプ 行番号=先頭
&階級値=&満点 ,&N=0
B
繰り返し (&階級回=<&回
.and (.not #終端行))
手続き実行 得点代入
C
繰り返し (&階級値=<&点
.and (.not #終端行)) D
&合男=&合男+1 ,&点計合男=&点計合男+&点
&高点合男=#大(&高点合男,&点) ,&低点合男=#小(&低点合男,&点)
条件 (&満点=&点) &満男=&満男+1
条件 (&点=0) &O男=&O男+1
ジャンプ 行番号=+1
手続き実行 得点代入
繰り返し終了
編集表 &TBL2 E
&N=&N+1
&階級下=#全角(#STR(&階級値)),&階級上=#全角(#STR(&階級値+&階級幅-1)) F
条件 (&N=1) &階級上=#連結(&階級下,"")
条件 (&N>1) &階級上=#連結(&階級下,"〜")
条件 (&階級幅=1) &階級上=#連結(&階級下,"")
行挿入 [度数]=#COND(&合男=0,"",1,&合男),[階級]=&階級上
G
ジャンプ 行番号=+1
&計合男=&計合男+&合男 ,&合男=0
H
編集表 &TBL1 I
&階級値=&階級値-&階級幅 J
繰り返し終了
手続き終了
名札 得点代入
条件 (.not #終端行 .and &KOUF=1) &点=#項目属性(&KOUA,0)
手続き終了
【解説】
@ 処理に先立ち、対象表(&TBL1)の対象項目(&KOUA)について降順に並べ替えています。
対象項目の項目集計より、データの最大値・最小値などを知ります。
A 満点・最小値・設定した階級幅から度数表の度数を入力するための必要最低行数を決めます。
B 満点を最大の階級値にとります。
C 対象表(&TBL1)の先頭行から対象項目(&KOUA)の項目値(データ)を取り出します。
D 当該階級値内において、度数・得点計・最高点・最低点・満点人数・0点人数を求める
作業を繰り返します。
E 度数表(&TBL2)を編集表とします。
F 階級値を表す文字列を用意します。先頭行の階級値を表す文字列には"〜"を付けません。
G 当該階級の階級値を項目[階級]に、その度数を項目[度数]に行挿入によって記入します。
記入後、1行下げておきます。
H 度数合計を求めたあと、当該階級の度数はクリアしておきます。
I 再び、編集表を対象表に戻します。
J 次の階級の階級値を求めます。
順次対象表の行を1行ずつ下げながら、C〜Jの作業を繰り返します。
【参考】
