『商品別を店舗別にしたい』(わしゃ)
A B C D E F G H
1
2 店舗コード 商品A ロケーション 容量 入数 ( JANコード )
3 商品コード 店舗A 出荷ケース 出荷バラ
4 ■ 商 品 計 ■ 合計ケース 合計バラ
5 店舗コード 商品B ロケーション 容量 入数 ( JANコード )
6 商品コード 店舗B 出荷ケース 出荷バラ
7 ■ 商 品 計 ■ 合計ケース 合計
8 商品コード 商品C ロケーション 容量 入数 ( JANコード )
9 店舗コード 店舗B 出荷ケース 出荷バラ
10 店舗コード 店舗C 出荷ケース 出荷バラ
11 ■ 商 品 計 ■ 合計ケース 合計バラ
商品別で店舗と出荷数量が乗っているのですが、これを店舗別で商品と数量を出したいです。
< 使用 Excel:Excel2019、使用 OS:Windows11 >
店舗コードを列挙しておいて、数量はSUMIF関数で集計 (マナ) 2024/07/26(金) 15:19:45
>店舗別で商品と数量を出したい
誤解がありました。 Power Quweyで整形して、ピボットテーブルで集計すかね。 それかマクロになりますね。。 (マナ) 2024/07/26(金) 19:49:08
マクロを書いてみました。 集計作業はピボットを利用したほうが 理解しやすいマクロになったかもしれません。
もしマクロを自分で書いたことがないのであれば、 Power Query & ピボットのほうが簡単でおすすめ。
Sub test() Dim dic As Object, dicT As Object, aryl As Object Dim r As Range, a As Range Dim v, i As Long Dim sc As String, sn As String Dim pc As String, pn As String Dim n1 As Long, n2 As Long, n3 As Long, n4 As Long Dim k1, k2
Set dic = CreateObject("scripting.dictionary") Set dicT = CreateObject("scripting.dictionary") Set r = Cells(1).CurrentRegion Set r = Intersect(r, r.Offset(1)) For Each a In r.Columns(5).SpecialCells(xlCellTypeBlanks).Areas v = a.Offset(-1, -4).Resize(, 4).Value pc = v(1, 1) '商品コード pn = v(1, 2) '商品名 For i = 2 To UBound(v) sc = v(i, 1) '店舗コード sn = v(i, 2) '店舗名 If Not dic.exists(sc) Then Set dic(sc) = CreateObject("scripting.dictionary") dic(sc)("hd") = Array(sc, sn, Empty, Empty) dicT(sc) = Array(Empty, Empty, 0, 0) End If If Not dic(sc).exists(pc) Then Set dic(sc)(pc) = CreateObject("scripting.dictionary") End If n1 = dic(sc)(pc)(2) + v(i, 3) '出荷ケース n2 = dic(sc)(pc)(3) + v(i, 4) '出荷バラ dic(sc)(pc) = Array(pc, pn, n1, n2) n3 = dicT(sc)(2) + v(i, 3) '合計ケース n4 = dicT(sc)(3) + v(i, 4) '合計バラ dicT(sc) = Array("■ 店 舗 計 ■", Empty, n3, n4) Next Next
Set aryl = CreateObject("system.collections.arraylist") For Each k1 In dic.keys For Each k2 In dic(k1).keys aryl.Add dic(k1)(k2) Next aryl.Add dicT(k1) Next
Worksheets.Add.Cells(1).Resize(aryl.Count, 4).Value _ = Application.Transpose(Application.Transpose(aryl.toarray))
End Sub (マナ) 2024/07/27(土) 13:28:30
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.