フォルダー名が E:\office\Excel\ExcelVBA\施設売上
シート名が Sheet1 だとして書きます。
最初のブック Sheet1
A B C D
1 aaa
2
3
4
5
6 場 所:アア
7
8
9
10 名前 分類 値
11 あ P 10
12 い q 11
13 う r 12
14 え P 13
15 お q 14
16 か r 15
17 き P 16
18 く q 17
19 け r 18
次のブック Sheet1
A B C D
1 bbb
2
3
4
5
6 場 所:イイ
7
8
9
10 名前 分類 値
11 こ s 100
12 さ t 101
13 し u 102
14 す v 103
のようにA1からセルが埋まっている場合は、次のようになります。
let
MltExp = (Sor) =>
let
Sht = Sor{[Item="Sheet1",Kind="Sheet"]}[Data],
Plc = Text.AfterDelimiter(Sht{5}[Column2],":"),
Skp = Table.Skip(Sht,9),
Rem = Table.RemoveColumns(Skp,Table.ColumnNames(Skp){0}),
Prm = Table.PromoteHeaders(Rem, [PromoteAllScalars=true]),
Add = Table.AddColumn(Prm, "場所", each Plc)
in
Add,
Src = Folder.Files("E:\office\Excel\ExcelVBA\施設売上"),
Add = Table.AddColumn(Src,"Tbl", each MltExp(Excel.Workbook([Content]))),
Del = Table.SelectColumns(Add,{"Tbl"}),
Exp = Table.ExpandTableColumn(Del, "Tbl", Table.ColumnNames(Del[Tbl]{0}), Table.ColumnNames(Del[Tbl]{0}))
in
Exp
たぶん以下のように統合できます。
A B C D
1 名前 分類 値 場所
2 あ P 10 アア
3 い q 11 アア
4 う r 12 アア
5 え P 13 アア
6 お q 14 アア
7 か r 15 アア
8 き P 16 アア
9 く q 17 アア
10 け r 18 アア
11 こ s 100 イイ
12 さ t 101 イイ
13 し u 102 イイ
14 す v 103 イイ