前回から引き続き、列タイトルが変わるデータをパワークエリで取り込む方法シリーズです。
にゃんで!?
勘弁してほしいニャ。。。
列タイトルが変わらないように固定する。
取得したテーブルデータを関数で処理した場合に起きるエラーの原因
![](https://sakatakablog.com/wp-content/uploads/2019/10/スライド2-1-1024x576.png)
![](https://sakatakablog.com/wp-content/uploads/2019/10/スライド2-1-1024x576.png)
エラーはデータを更新した時に起こります。
上段、1907.csvを読み込み、そのデータを参照するSUMIF関数を組んだとします。
そしてこれを1908.csvに更新する。すると関数組んだセルが右にずれてエラーになるのです。
なぜこんなことになるのか、1908.csvに更新した時にシート上ではこのように挙動しているからなんですね。
![](https://sakatakablog.com/wp-content/uploads/2019/10/スライド3-1-1024x576.png)
![](https://sakatakablog.com/wp-content/uploads/2019/10/スライド3-1-1024x576.png)
列を挿入→1908.csvを取り込む→1907.csvから読み込んだデータをセルごと削除→左に寄せる
このような挙動をするので、もともとの参照元が無くなるような挙動を取るのです。
このようになる原因は列タイトルが変わることに起因するのです。
従って回避策は「取得データの列タイトルが変わっても、シートに読込む列タイトルは変わらないように固定する」となるのです。
列タイトルを固定する方法
![](https://sakatakablog.com/wp-content/uploads/2019/10/スライド4-1-1024x576.png)
![](https://sakatakablog.com/wp-content/uploads/2019/10/スライド4-1-1024x576.png)
これはパワークエリの編集画面で、前回記事で紹介した最終ステップです。
ここでやらないといけないことはこの2点。
- 列の名前を変える。今回の場合、「当期発生」「当期累計」「前期累計」
- 詳細エディターで変更前の列タイトルをC2・C4・C5等の対応する変数に修正する。
これで、いったん変数扱いにした列タイトルを、任意の固定値に置きなおすのです。
列タイトルを変えた詳細エディタの確認
![](https://sakatakablog.com/wp-content/uploads/2019/10/スライド5-1-1024x576.png)
![](https://sakatakablog.com/wp-content/uploads/2019/10/スライド5-1-1024x576.png)
この青枠内が今回の追加箇所です。ここをこのような形に直せば完了です。
列タイトルを固定して更新できるかを確認
![](https://sakatakablog.com/wp-content/uploads/2019/10/スライド6-1-1024x576.png)
![](https://sakatakablog.com/wp-content/uploads/2019/10/スライド6-1-1024x576.png)
列タイトルを固定した場合、シート上で更新されるのはデータのみとなるので、このように関数がエラーになることは無くなります。
まとめ
ここで今回のポイントをおさらいしておきましょう。
列タイトルが変わらないように固定する。
これだけです。
これだけなのですが、この列タイトルを変数に変えたら固定値に戻す、これを徹底するだけで回避できるエラーなので、ぜひ列タイトルをいじるときは固定値に戻すということを徹底してもらえたらと思います。
![](https://sakatakablog.com/wp-content/uploads/2019/10/スライド7-1-1024x576.png)
![](https://sakatakablog.com/wp-content/uploads/2019/10/スライド7-1-1024x576.png)
次回、第一部と第二部を根底から覆す最終章「サンプルクエリ、いらなくね?」をお届けします。
最後までありがとうございました!