データを扱う時のいろいろな操作 2

■ Excel豆知識40





 今回は「複数のワークシート範囲」からピボットテーブルを作ってみようと思います。

 2007以降の「ピボットテーブルの作成」ダイアログボックスでは、「複数のワークシート範囲」を選択する
ことが出来なくなりました。2007以降でこれを使いたい場合には、クイックアクセスツールバーのユーザー設
定で、「リボンにないコマンド」とか「すべてのコマンド」として出てくる「ピボットテーブル/ピボットグラ
フ ウィザード」を「追加」します。クイックアクセスツールバーに追加されたそのボタンをクリックすれば、
2003までと同じウィザードから「複数のワークシート範囲」を選択することが出来ます。 


下図のピボットテーブルウィザードの1/3の「分析するデータのある場所」で「複数のワーク
シート範囲」を選択して作業をはじめるのですが、これは普通に想像するのとはちょっと違う
ものだと思います。
ピボットテーブルウィザード1/3
[図04001]

シートにあるデータの形式が「A」のようなクロス表の形になったものの場合に使えるものだ
と思います。「B」のような形式が普通のリスト形式ですが、この形のものが複数のシートに
ある場合に使うと、想像とは違うものが出来上がってしまいます。
複数のシートからのピボットテーブルに適するデータ形式
[図04002]

出来上がりのピボットテーブルは下図のようになります。
「行」「列」「値」といった項目が表示されるところが通常のピボットテーブルとは違います。
複数のシートからのピボットテーブル
[図04003]

では早速作ってみましょう。



40-1 ピボットテーブル(複数のワークシート範囲から)

<複数のワークシート範囲からピボットテーブルを作成する>

(1)「データ1」「データ2」「データ3」の各シートにある表をもとにして「ピボットシ
ート」にピボットテーブルを作成します。
なお、説明の画像ではデータシートにある点数を全部10にして、ピボットテーブルに合計や平
均がどのように反映するか、わかり易いようにしています。

どのシートを選択した状態から始めてもかまいませんが、今回は「ピボットシート」にピボッ
トテーブルを作成しようと思いますので、「ピボットシート」のA1セルを選択した状態で、ピ
ボットテーブルウィザードを出してください。「分析するデータのある場所」の「複数のワー
クシート範囲」にチェックを入れ「次へ」。ウィザードの画面が下図のように変わります。
ピボットテーブルウィザード1/3
[図04004]

(2)ウィザードの2a/3の「ページフィールドの作成方法」で「指定」にチェックを入れ「次
へ」。
ピボットテーブルウィザード2a/3
[図04004-2]

(3)ウィザードの2b/3の「範囲」のボックスの右の小さな四角をクリックし、
ピボットテーブルウィザード2b/3
[図04005]

「データ1」シートのB3:E13の範囲を選択。
「閉じる」ボタンで戻る。
ピボットテーブルウィザード2b/3
[図04005-2]

(4)「追加」ボタンをクリック。
ピボットテーブルウィザード2b/3
[図04006]

すると、「範囲一覧」に範囲が追加されます。
同様にして「データ2」シートのB3:E12を選択し、「追加」。
ピボットテーブルウィザード2b/3
[図04007]

また同様にして「データ3」シートのB3:G16を選択し、「追加」。 
ピボットテーブルウィザード2b/3
[図04007-2]

(5)「ページフィールド数」の「1」にチェックを入れ、「範囲一覧」からデータ1シート
の範囲を選択して「フィールド1」の下のボックスに「第1回」と入力。これがページフィー
ルドのアイテム名になります。
ピボットテーブルウィザード2b/3
[図04007-3]

同様にして、データ2シートの範囲を選択して、「第2回」と入力。
ピボットテーブルウィザード2b/3
[図04007-4]

同様にして、データ3シートの範囲を選択して、「第3回」と入力。
そして「次へ」。
ピボットテーブルウィザード2b/3
[図04007-5]

ここで下図のようなメッセージが出ると思います。
これはこのブックに既に同じデータを下にピボットテーブルを作成してあるからです。ここで
はとりあえず「いいえ」を選択して別のピボットテーブルを作成するようにしてください。
(「はい」を選択するとちょっと面倒になりますので。(^^ゞ )
メッセージ
[図04007-6]

(6)ウィザードの3/3でピボットテーブルの作成先を指定。「新規ワークシート」を選択し
てもかまいません。今回は「既存のワークシート」にチェックを入れ、「完了」。
(このシートを選択した状態でピボットテーブルのウィザードを出しましたので、シートを選
択し直す必要はありません。)
(選択してあるセルの二つ下にピボットが作られるという点滅点線が表示されます。)
ピボットテーブルウィザード3/3
[図04008]

(7)下図のように出来上がります。点数を全部10にしておきましたので、後から追加になっ
た人や途中抜けた人など、それぞれちゃんと反映しているのがわかります。
複数のシートからのピボットテーブル
[図04009]

この時、範囲を指定する場合に空白行などをいれてしまうと、「合計」ではなく「データの個
数」が表示されると思います。その時はA3セルの「データの個数/値」のところで右クリックし、
「フィールドの設定」で「合計」にしてください。



<平均値を求める>

とりあえず平均値を例にしてみようと思いますが、合計、最大値、最小値など必要に応じて選
んでください。
(1)A3セルの「合計/値」のところで右クリックして出てくるメニューから「フィールドの
設定」をクリックし、
ピボットテーブルの集計を平均に
[図04010]

(2)「集計の方法」から「平均」を選択して「OK」。平均が小数点になる場合などはこのダ
イアログボックスの「表示形式」をクリックすると、
「セルの書式設定」ダイアログボックスが出ますので、そこで書式を設定できます。
ピボットテーブルの集計を平均に
[図04010-2]

下図のように一律の数字が分母になるのではなく、それぞれの「合計割るデータの個数」で
平均が計算されていることがわかります。
ピボットテーブルの集計を平均に
[図04011]



<ページフィールドでシートごとのデータを表示させる>

(1)ページフィールドの▼をクリックすると、先ほどページフィールドのアイテム名として
入力した3つの項目が表示されます。
ページフィールドでアイテムを選択
[図04012]

(2)「第1回」をクリックし、「OK」とすると、「データ1」シートにあるデータのみが表
示されます。「第2回」「第3回」も同様に「データ2」「データ3」シートのデータのみが
表示されます。
ページフィールドでアイテムを選択

ページフィールドでアイテムを選択
[図04013]



<科目を並べ替える>

もとのデータの科目の並び順が下記のようになっていましたので、ピボットテーブルの科目の
並びもこれと同じにしたいと思います。

(1)英語を数学の右に移動します。
マウスポインタが4方向の矢印になったらマウスで掴んで、
データフィールドの科目を並べ替え
[図04014]

(2)数学の右までドラッグし、ぎざぎざの線がそこにきたらマウスをはなします。
データフィールドの科目を並べ替え
[図04014-2]

[図04014]のところで、Excel2000ではマウスポインタが4方向への矢印にはなりませんが、
セルを選択してから枠線付近をマウスで掴むとドラッグして移動できると思います。
(3)同様にして社会を理科の右へドラッグします。
データフィールドの科目を並べ替え
[図04015]

(4)これでデータの並びと同じになりました。
データフィールドの科目を並べ替え
[図04015-2]

ただ、行の項目の名前はデータと同じにはなりません。

これはピボットテーブルでは漢字の並び順が「ふりがな順」にはならず、「JISコード順」に
並ぶためです。 普通のピボットテーブルならふりがなの列を追加したりして並びを工夫でき
るのですが、今回やっている「複数のワークシート範囲」からのピボットテーブルは自由度が
少なく、無理のようでした。

ということで、上記のピボットテーブルから普通のピボットテーブルを作ってしまうことを考
えました。(邪道かもしれませんが。^^; )

次は「普通のピボットテーブルへ」です。
ページTOPへ