以前書いた3部作の続編です。
さて、前回の記事ではタイトルを「使わなきゃいいじゃん!」で終わりました。
が・・・!もっと簡単に列タイトル変わるデータは使えない問題を解決できることが分かりました。
ちなみに列名が変わることで起きるエラーを回避するコツはこうです。
列名(動く列)を指定して実行するステップは使わない!
では早速見ていきましょう。
ピボット解除を使ったエラー回避方法
データの取り込み
まずはデータを取り込みましょう。
![](https://sakatakablog.com/wp-content/uploads/2020/03/image.png)
まずは範囲選択し、データタブから「テーブルまたは範囲から」を選びます。
ここはデータによって変えましょう。
そして取込が完了するとこんな画面になると思います。
![](https://sakatakablog.com/wp-content/uploads/2020/03/image-1-1024x447.png)
ところで、このままでは問題が起きます。
「適用したステップ」をご覧ください。
「変更された型」というステップがありますね。これが、各列のデータ型を文字列や数値に変更しているのですが、その際に列名を使って指定しています。
なので、列名が入ったステップは削除しないといけません。
ステップの削除は、「変更された型」横の×印をクリックして削除します。
これで下準備は完了です。
ピボット解除の実行
次にやることは、固定列を見つけることです。
今回の場合、氏名列は変わらないものとして、まずはこの列を選択して右クリックします。
![](https://sakatakablog.com/wp-content/uploads/2020/03/image-2-1024x444.png)
そして「その他の列のピボット解除」をクリックします。
![](https://sakatakablog.com/wp-content/uploads/2020/03/image-4.png)
すると、このように氏名以外の列を縦列に展開できました。
![](https://sakatakablog.com/wp-content/uploads/2020/03/image-6-1024x427.png)
データの型を整える
ここで初めて各列のデータ型を整えます。
![](https://sakatakablog.com/wp-content/uploads/2020/03/image-5-1024x421.png)
例えば値列のデータ型を数値に変える、などです。
これで、変わる列名を使わずにデータ型を整えることまでできました。
あわせて詳細エディターを見れば、変わる列名を使ってるステップは無いはずです。
これが、エラーの芽を摘むということです。
こんな感じでデータ型を整えたら、データの形を元の形に戻してみましょう。
列のピボット
列のピボット解除があれば、列をピボットするボタンもあります。
それがこちら。変換タブの「列のピボット」をクリックします。
その前に、縦を横にしたい列を選択するのをお忘れなく。
![](https://sakatakablog.com/wp-content/uploads/2020/03/image-7-1024x606.png)
そして、次の画面でピボットする列と集計列を確認します。
![](https://sakatakablog.com/wp-content/uploads/2020/03/image-8-1024x412.png)
すると、こんな感じで元の形に戻りました。
![](https://sakatakablog.com/wp-content/uploads/2020/03/image-9-1024x383.png)
Excelへの貼り付け
最後に閉じるボタンをクリックしてエクセルに読込みます。
![](https://sakatakablog.com/wp-content/uploads/2020/03/image-10-1024x428.png)
こんな感じになりますね。
![](https://sakatakablog.com/wp-content/uploads/2020/03/image-11-1024x545.png)
あとは、元データの列名を変えてすべて更新ボタンを押してみてください。
![](https://sakatakablog.com/wp-content/uploads/2020/03/image-12.png)
パワークエリから書き出したデータも同じように更新されますので。
この方法の問題
この方法で列名が変わっても簡単に更新できることが分かったのですが、一つ問題があります。
それは列名が変わった時の更新の挙動です。
もう一度、動画をよく見てください。
よく見ると、更新前の列が右に追い出されてませんか?
これ実は、新しい列が挿入されて古い列が右に移動して列削除されているのです。
なのでこの列を参照した数式を組んでると参照先不在のエラーになってしまいます。
ですのでこれを参照している場合は別の方法を考えないといけません。
別の方法はまた今度と言うことで今回はこの辺で・・・。
次回、この回避方法を考えて見た!をお届けします!
最後までお読みいただきありがとうございました!