Microsoft Excel データ変換

Microsoft Excel データ変換

次のような Excel ドキュメントがあります。

Country       Property   Value 
Canada        Capital    Ottawa 
Canada        Population 38 
Canada        Language1  French 
Canada        Language2  English 
United States Capital    Washington  
United States Population 280 
United States Language1  English 
United States Language2  NA

これを次のように再配置したいと思います。

Country         Capital     Population Language1 Language2
Canada          Ottawa      38         French    English
United States   Washington  280        English   NA

この変換を行う方法はありますか? ありがとうございます。

答え1

注: Country、Property、Value の列を含む最初のテーブルが Sheet1 に保存されていると仮定します。

  1. Country、Capital、Population、Language1、Language2の列を持つ新しいシートを作成します。
  2. 最初の列に異なる国を入力する
    1. Sheet1からすべての国をコピーする
    2. 重複値を削除する機能を使用する
  3. 新しいシートのセル B2 に以下の配列数式を入力します。数式を入力するときに Ctrl + Shift + Enter キーを押して配列数式にすることを忘れないでください (中括弧で示されます)。
  4. B2の数式を残りのセルにコピー/貼り付けます

    =OFFSET(Sheet1!$A$1;MIN(IF((Sheet1!$A$2:$A$1000=$A2)*(Sheet1!$B$2:$B$1000=B$1);ROW(Sheet1!$A$2:$A$1000);FALSE))-1;2)

(この数式は、国とプロパティ名の両方に一致するソースデータの最初の行番号を取得し、オフセット関数を使用してその行からプロパティ値を取得します)

答え2

その式は実際には... かもしれないと思う。

=OFFSET(Sheet1!$A$1,MIN(IF((Sheet1!$A$2:$A$1000=$A2)*(Sheet1!$B$2:$B$1000=B$1),ROW(Sheet1!$A$2:$A$1000),FALSE))-1,2,-1)

関連情報