• ベストアンサー

エクセルのピポットテーブルのセルの値を繰り返し表示(結果をあとでオートフィルタや並び替えにかけたいが・・・)

エクセルのピポットテーブルのカテゴリーのセルを結合することはできますが、各セル全部に値を入れることはできるでしょうか。 例えば: 色,大,小,value 赤,A,a,10 赤,B,a,5 青,B,b,2 を、エクセル2002のピポットテーブルにて次の表のように行に色、大文字、列に小文字ににすると、赤が一つの行にしか表示されません   ,a , b 赤,A,10,   ,B,5,  青,B, ,2 このままだと値をコピーしてもオートフィルタや並び替えにかけられませんが、どなたか、同じカテゴリーの部分の全部の行にカテゴリー名を表示する方法やそのためのVBAなどをお教えいただけますと大変助かります。どうぞよろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

コピー&ペーストした後、行のフィールドだった範囲を選択します。 (例の場合は、色の列だけでいいのかな) [Ctrl]+[G]ジャンプ - [セル選択] - ●空白セル そのまま 「=」を入力して [↑] 数式(相対参照の式)が入るので[Ctrl]+[Enter]で確定します もう一度、行のフィールドだった範囲を選択してコピー 形式を選択して貼り付け ●値 マクロに関しては自信がありませんので、 上記の一連の動作を記録してはどうでしょうか?

latifolius
質問者

お礼

ありがとうございます。 人手間ありますが、マクロなしで確実にできました。 CTL+ENTERで選択範囲全部に相対参照で同じ式が入力できるのは初めて知り大変勉強になりました。 ありがとうございます。

すると、全ての回答が全文表示されます。

その他の回答 (1)

  • imogasi
  • ベストアンサー率27% (4737/17070)
回答No.2

もう少しデータ例を増やし、丁寧に例と説明を書かないと趣旨がわかりにくい。 下記を参考に見習ったらどうですか。 例データ 色 大 小 値 赤 A a 10 赤 B a 5 青 B b 2 赤 C a 10 青 A b 2 ーーーー ピボットテーブル 合計 / value 小 色 大 a b 総計 青 A 2 2 B 2 2 青 合計 4 4 赤 A 10 10 B 5 5 C 10 10 赤 合計 25 25 総計 25 4 29 ーー 青 合計 のセルで右クリックー表示しない、で 合計 / value 小 色 大 a b 総計 青 A 2 2 B 2 2 赤 A 10 10 B 5 5 C 10 10 総計 25 4 29 ーーーーー これをG3を黄転移して、形式を選択して貼り付けー値 ーー VBAについては課題丸投げでコードを書いてほしいと言うのは規約違反だが、内容が簡単なので書いておく。 #1のご回答のよう操作が、質問者には適当かと思う。 標準モジュールに (貼り付ける場所でG,For i = 3 To dの3は変得るべきです。) Sub test03() d = Range("G65536").End(xlUp).Row MsgBox d For i = 3 To d If Cells(i, "G") = "" Then Cells(i, "G") = Cells(i - 1, "G") Next i End Sub を実行。 ーーー 結果 合計 / 値 小 色 大 a b 総計 青 A - 2 2 青 B - 2 2 赤 A 10 - 10 赤 B 5 - 5 赤 C 10 - 10 総計 25 4 29 結果はこういうのでよいのかな。 ーー ピボットテーブルを直接触らせてくれないようだ。何か保護を解除すれば、触れるのかもしれないが。

latifolius
質問者

お礼

ありがとうございます。VBのほうも大変勉強になりました。こちらの方法も試してうまく行きました。質問が分かりにくい点すみません。

すると、全ての回答が全文表示されます。

関連するQ&A