-
よねさんのExcelとWordの使い方 »
-
エクセル2013基本講座:目次 »
-
テーブル機能 »
-
テーブルで集計する
- このページでは、データ領域をテーブルに設定した時の集計方法や計算式の入力方法などについて書いています。
- データ範囲をテーブルに変換する方法は Excel2013基本講座:テーブルを作成する/解除する をご覧ください。
- テーブルで集計をしてみます。
- テーブル内のセルを選択します。
- テーブル ツールの[デザイン]タブを選択します。
[テーブル スタイルのオプション]グループにある[集計行]をクリックしてチェックを入れます。
- テーブルの最下行に集計行が作成されました。
売り上げの箇所にはSUBTOTAL関数で合計が表示されました。
- SUBTOTAL関数が使用される理由はスライサーなどデータをフィルターした時に表示されているデータだけを計算するためです。
SUBTOTAL関数で引数「109」は非表示データは無視します。(この引数はExcel2003以降で使用可能です)
- 集計行の他のセルにも計算結果を表示してみます。
- 計算結果を表示したいセルを選択します。
- セルに表示された[▼]ボタンをクリックしてドロップダウンリストを表示します。
- ここでは[平均]を選択してみました。(ここでの平均は実用上は意味がないと思いますが、説明上の理由です)
- SUBTOTAL関数で数式が入力され、表示データの平均値が計算されました。
- テーブルに列を追加して計算式(数式)を入力してみます。通常の(標準の)セルとはちょっと異なります。
- テーブルの右のセルに見出しを入力します。ここでは「消費税」としました。
自動でテーブルが拡張されました。(1列が追加されています)
- 入力したセルに「オートコレクトのオプション」が表示されますので、この自動拡張はオートコレクトの機能で働いているのが分かります。
ここでは説明のため、「オートコレクトのオプション」をクリックしていますが、この操作は必要ありません。
- この機能が自動で働かないときは オートコレクトの設定 を変更します。
- H2セルに消費税の計算式(数式)を入力してみます。
「=int(」を入力して、G2セルをクリックすると、[@売上金額]と構造化参照の形で入力されました。
ここでは消費税は5%として計算するので、続けて「*5%)」と入力しました。
- 数式の入力を確定するため[Enter]キーを押すと・・・・以降のセルに自動で数式が入力されました。これも自動拡張の機能です。
- 集計行のセルH19を選択します。
- [ホーム]タブの[オートSUM]をクリックします。
- SUBTOTAL関数で数式が入力されました。
(SUM関数ではないことに注意してください。テーブル内ではオートSUMの挙動も変化するようになっています)
引数もテーブルの構造化参照になっています。
- セルの表示形式を通貨タイプにして以下のようにしました。
- なお、構造化参照を使用しているテーブルを範囲に変換したらどうなるのでしょう?
- 構造化参照が一般のセル参照に置き換えられます。範囲に変換しても計算は同じ結果になります。
- H2セルの =INT([@売上金額]*5%) は =INT(data_A!$G2*5%) となっています。
ここで使用しているシートは data_A ですので、シート名!参照セル と置き換えられているのが分かります。
@は「この行」の意味ですので、行が絶対参照になっています。
- ただし、この逆は行われません。
通常のセル範囲で数式にセル参照の形式で入力されているケースでは、テーブル化しても構造化参照に変換はされません。
- テーブルでの列の追加などの自動拡張機能はオートコレクトの設定です。
- [ファイル]タブをクリックしてバックステージを表示します。
[オプション]を選択します。
- [文書校正]を選択し、[オートコレクトのオプション]ボタンをクリックします。
- 「入力オートフォーマット」タブを選択します。
「テーブルに新しい行と列を含める」にチェックを入れます。
「テーブルに数式をコピーして集計列を作成」にチェックを入れます。
よねさんのExcelとWordの使い方|エクセル2013基本講座:目次|テーブル機能|エクセル2013基本講座:テーブルで集計する