[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『ピボットテーブルでの表作成』(まめち)
商品コード 商品名 容量 納品日 A店 B店 C店 合計
111111 ○○○ 350 12月21日 10 20 5 35
222222 △△△ 500 12月21日 20 5 20 45
333333 □□□ 750 12月21日 5 10 5 20
上記にある表をCSVファイルに出力したいがためにピボットテーブルで
下記のように表示したいのですがなかなか出来ず、インターネットで調べたりもしたのですが分からなかったため質問しました。
店名 商品コード 商品名 納品数量
A店 111111 〇〇○ 10
A店 222222 △△△ 20
A店 333333 □□□ 5
B店 111111 〇〇○ 20
B店 222222 △△△ 5
B店 333333 □□□ 10
C店 111111 ○○○ 5
C店 222222 △△△ 20
C店 333333 □□□ 5
これができるようでしたら店名、商品コードなどのタイトル行が表示されないやり方も教えていただきたいです。
また、これはピボットテーブル以外でもできるのかも教えていただきたいです。
すみませんが、どなたか分かる方よろしくお願い致します。
< 使用 Excel:Excel2019、使用 OS:Windows10 >
ピボットテーブルでは難しいんじゃないでしょうか 私はやり方をしりません。
PowerQueryでならば結構簡単です。 [データ]タブ→[データの取得と変換]グループで[テーブルから]を選んで、 PowerQueryエディタが起動したら、 容量、納品日、合計の列を選択して、[列の削除] 商品コード、商品名の列を選択して、[変換]タブ→[任意の列]グループ→[列のピボット解除]→[その他の列のピボット解除]
です。 その後、[ホーム]タブで[閉じと読み込む] (´・ω・`) 2021/12/22(水) 13:04
(´・ω・`)様の手順を試したところ惜しいところまで行きました。
すこし試してみて出来るかやってみます。
新しい機能を教えてくださり、ありがとうございました!
また、わからないことがあったらよろしくお願い致します。
(まめち) 2021/12/22(水) 13:19
「被っている 」というのはどういう状況かよくわかりません 説明をお願いします (´・ω・`) 2021/12/22(水) 14:52
´・ω・`さんの手順の後、商品コード欄を昇順に並べ替え、その後属性欄(店名)を昇順に並べ替えでまめちさんの 例と同じになったが。 (ねむねむ) 2021/12/22(水) 15:17
ポイントは、「列のピボット解除」です。 これをちゃんとやってますか? (´・ω・`) 2021/12/22(水) 15:19
商品コード、商品名の列を選択して、[変換]タブ→[任意の列]グループ→[列のピボット解除]→[その他の列のピボット解除] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^ ここがポイントです。
(めいぷる) 2021/12/22(水) 15:22
こんにちは、マクロですが Sub Test() Dim v As Variant, v2 As Variant Dim i As Long, j As Long, k As Long
v = Range("A1").CurrentRegion ReDim v2(1 To (UBound(v) - 1) * 3, 1 To 4) For i = 5 To 7 For j = 2 To UBound(v) k = k + 1 v2(k, 1) = v(1, i) '店名 v2(k, 2) = v(j, 1) '商品コード v2(k, 3) = v(j, 2) '商品名 v2(k, 4) = v(j, i) '納品数量 Next Next Range("A10:D10").Value = Array("店名", "商品コード", "商品名", "納品数量") Range("A11").Resize(UBound(v2), UBound(v2, 2)).Value = v2 End Sub
(ピンク) 2021/12/22(水) 15:27
# ちなみに、これはピボットと反対の操作なので
# 「アンピボット」と呼ばれます。
# 「横持ち」から「縦持ち」への変換などということもあります。
(γ) 2021/12/22(水) 15:36
ピボット解除までやったら、PowerQueryエディターの [ホーム]タブ→[クエリ]グループ→[詳細エディター]を開いて、 その画面のテキストをこのスレッドにそのままコピペしてください。
私の書いた段階を踏んだら、こんな感じになってるとおもいます。(細部は異なるかも) let ソース = Excel.CurrentWorkbook(){[Name="テーブル1"]}[Content], 変更された型 = Table.TransformColumnTypes(ソース,{{"商品コード", Int64.Type}, {"商品名", type text}, {"容量", Int64.Type}, {"納品日", type datetime}, {"A店", Int64.Type}, {"B店", Int64.Type}, {"C店", Int64.Type}, {"合計", Int64.Type}}), 削除された列 = Table.RemoveColumns(変更された型,{"容量", "合計", "納品日"}), ピボット解除された他の列 = Table.UnpivotOtherColumns(削除された列, {"商品名", "商品コード"}, "属性", "値") in ピボット解除された他の列 (´・ω・`) 2021/12/22(水) 16:38
・どの列を選択して、「その他の列のピボット解除」するのか、
または、
・どの列を選択して、「選択した列のみピボット解除」をするのか
意味を考えながら操作してください。
(γ) 2021/12/22(水) 16:55
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.