コントロールブレイク
項目の値が変わるのタイミングで、処理を行うテクニック
1. 売上集計(+音声解説)
あらかじめ商品コード順に並んだデータを上から順に見ていき、商品コードが変わったところで小計を表示する
Dim currentCode As String
Dim previousCode As String
For i = 0 To n - 1
currentCode = codeList(i)
'前のコードとは異なる → コントロールブレイク
If currentCode <> previousCode Then
If i > 0 Then
'小計などの出力処理を行う
End If
'集計初期化
sum = 0
End If
'集計処理
sum = sum + uriageList(i)
'最後のデータだったら、集計出力
If i = n - 1 Then
'最後の小計出力
End If
previousCode = currentCode
Next i
🚀 コントロールブレイク(Control Break)特徴
- コントロール(Control):制御、処理の流れ
- ブレイク(Break):中断、区切り、分岐
- 対象データをキーとなる項目で並び替えておく(ソートの)必要あり
- 最後の行でも小計出力が必要
VOICEVOX:四国めたん
2. 二重のコントロールブレイク(+音声解説)
- 初期処理後、データ有無を管理するFlgを0にしてループ1に入り、 第1キー項目を一時保存。
- ループ2の条件が成立すると、第2キー項目を一時保持。
- ループ3では同一キーの間、データ読込を続け、 キー値がブレイクしたときに小計処理などを行う。
- 最後に全体の終了処理を行う。
- ループ1は全体処理、ループ2は第1キー単位、ループ3は第2キー単位の処理を担当。
VOICEVOX:四国めたん
3. オリジナル_コントロールブレイク
📦出力画面



📘 ダウンロード教材について
本サイトで公開している教材・解説・Excelファイル等は、
全国商業高等学校協会が公表している過去問題を参考として、
学習支援を目的に独自に作成したものです。
全国商業高等学校協会とは関係がなく、認定・推奨を受けた教材ではありません。
- マクロは 売上集計や平均点の計算など、プログラミング学習に沿った処理を行います。
- 外部との通信やファイル操作は一切行いません。
- 掲載しているデータは実際の検定問題とは異なる場合があります。
- 全国商業高等学校協会が作成・監修した教材ではありません。
- 「全商検定の過去問題の利用に関するガイドライン」 を遵守します。
- 教育目的で無償提供しており、改変・再配布はご遠慮ください。
ご利用の際は、マクロを有効にする必要があります。学校のPCで使用する場合は、先生にご確認ください。
| ファイル名 | サイズ (KB) | ダウンロード |
|---|---|---|
| オリジナル_コントロールブレイク03.zip | 13 | |
| オリジナル_コントロールブレイク02.zip | 17 | |
| オリジナル_コントロールブレイク01.zip | 15 |