[[20220119103840]] 『2つの表から1つの表を作りたい』(光) >>BOT

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『2つの表から1つの表を作りたい』(光)

 北海道 東京 大阪
     3    2    1
     4    5    4

 北海道 東京 大阪
  20%  40%  15%
  13%  22%  90%

というような2つの表があるとき

  北海道 東京 大阪
 1            15%
 2       40%
 3  20% 
 4  13%       90%
 5       22%

という表を作るにはどうしたら良いでしょうか?

1つ目の表の値+1行のところに2つ目の表の値を入れたいということです。
よろしくお願いします。

< 使用 Excel:Excel2019、使用 OS:unknown >


Power Queryというツールをご存知ですか

(マナ) 2022/01/19(水) 12:29


少しいじってはみましたが、全く使い方が分かりません…
(光) 2022/01/19(水) 13:24

こんな手順です
 ・1つめの表をテーブル設定
 ・データの取得と変換/テーブルまたは範囲から
 ・インデックス列の追加
 ・ピボット解除
 ・閉じて次に読み込む/接続の作成のみ
 ・2つめの表をテーブル設定
 ・データの取得と変換/テーブルまたは範囲から
 ・インデックス列の追加
 ・ピボット解除
 ・クエリのマージ
 ・マージしたレーブルを展開
 ・インデックス列を削除
 ・列のピボット
 ・閉じて読み込む
  

(マナ) 2022/01/19(水) 18:32


Sub main()
    Dim sht As Worksheet, i As Long, 表1 As Range, 表2 As Range
    Set 表1 = Sheets("Sheet1").Range("A1:C3") '表題を含む表1の範囲を指定
    Set 表2 = Sheets("Sheet2").Range("A1:C3") '表題を含む表2の範囲を指定
    Sheets.Add After:=Sheets(Sheets.Count)
    Set sht = Sheets(Sheets.Count)
    With sht
        For i = 1 To 表2.Count
            If IsNumeric(表1(i)) Then
                 表2(i).Copy .Cells(表1(i).Value + 1, 表1(i).Column)
            Else
                 表2(i).Copy .Cells(1, 表1(i).Column)
            End If
        Next i
    End With
End Sub
(mm) 2022/01/20(木) 13:03

マナさん
試しにやってみましたが、私の理解不足でおかしな表ができてしまいました。
ピボット解除というのは「列のピボット解除」で合っていますでしょうか?
その場合はどの列をピボット解除すればよいのでしょう?

mmさん
求めていた表ができました。
大変ありがとうございました。

(光) 2022/01/20(木) 17:11


>どの列をピボット解除すればよいのでしょう?

追加した[インデックス]列を選んだ状態で、
「その他の列のピボット解除」です。

(マナ) 2022/01/20(木) 17:56


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.