[表操作]-[クロス集計]
指定した項目のグループ集計を計算し,それを2次元の表に並べ替えて表示します。
- クロス集計とは,通常の集計では縦1列に表示されてしまう集計結果を,縦方向,横方向に分類して表の形で見せる集計方法です。
- たとえば,社員の毎日の勤務時間が入力されている表において,社員別/月ごとの勤務時間合計を計算する場合,通常の集計では最初の社員の 1 月から 12 月までの勤務時間が縦に並び,その下に次の社員の 1 月から 12 月までの勤務時間が並ぶという形になります。縦方向に集計する:集計
社員名 | 月 | 勤務時間 |
鈴木 | 1月 | 143時間 |
鈴木 | 2月 | 148時間 |
| … |
|
鈴木 | 12月 | 163時間 |
佐藤 | 1月 | 145時間 |
佐藤 | 2月 | 152時間 |
| … |
|
佐藤 | 12月 | 151時間 |
| … |
|
集計表
- クロス集計では上のような集計結果が,横方向(行)に一人の社員の勤務時間が並び,縦方向(列)にある月の全社員の勤務時間が並ぶという表の形で表示されます。
社員名 | 1月 | 2月 | … | 12月 |
鈴木 | 143時間 | 148時間 | … | 163時間 |
佐藤 | 145時間 | 152時間 | … | 151時間 |
|
|
| … |
|
クロス集計表
- 結果として表示されるクロス集計表の左端で縦に並ぶ項目を左見出し項目(上の例では [社員名]),クロス集計表の項目名になる項目を上見出し項目(上の例では [月])と呼びます。クロス集計表の要素となる値は,集計式として指定します(上の例では #合計([勤務時間]) )。
- 高速に集計するための索引を作成します。
クロス集計を実行する前に,クロス集計の集計対象となるレコードをグループ化するために索引を作成しておきます。この索引は,左見出し項目を第1整列キー,上見出し項目を第2整列キーとして作成します。複数の見出し項目がある場合には,左見出し項目を第1〜第n整列キー,上見出し項目を第n+1〜第m整列キーとして作成します。索引によるレコードのグループ化
クロス集計を実行するときに整列させることもできますので,必ずしもこの索引を作成しなくてもかまいません。ただし,その場合にはそのつど整列することになるので実行に時間がかかります。索引作成にかかる時間を考えると1回限りの集計では効果ありませんが,繰り返し実行する集計ならばクロス集計の速度が大幅に改善されます。
- [表操作]-[クロス集計] を選びます。
クロス集計は,表編集ウィンドウでもカード編集ウィンドウでも実行できますが,結果は常に表編集ウィンドウとして表示されます。
- クロス集計ダイアログでパラメータを指定します。
左見出し項目,上見出し項目,集計式などのパラメータを指定します。後で同じ集計を実行するために,それらのパラメータに名前を付けてクロス集計定義として登録することができます。
パラメータを指定したら [OK] ボタンを押してクロス集計を実行します。
- クロス集計の結果,クロス集計ウィンドウが表示されます。
結果のクロス集計表は,一時的なファイルとして元の表とはまったく別に作成されます。結果のファイルは一般の表と同じ形ですので,通常の表編集ウィンドウで行なえる操作はそのまま実行できます。また,元の表とは独立しているので項目属性などは引き継がれません。必要に応じて各列に共通のデータ型,表示幅,セル内での文字の配置,データの書式を設定してください。
- クロス集計表をクローズします。
結果が不要になったら表編集ウィンドウをクローズします。一時的に作成されていたファイルは破棄され,クロス集計結果が失われます。[ファイル]-[閉じる]
集計結果を保存しておきたい場合,[ファイル]-[名前を付けて保存] を実行してください。
集計の元になっている表がクローズされた場合にも,クロス集計表は自動的にクローズされ,結果が失われます。
- 表の集計
- クロス集計ダイアログ
- クロス集計ステートメント