shikumika’s diary

日々の事務作業で手間なことを簡単にできる仕組み(自動化、方法など)、困ったことの備忘録

Power Query(パワークエリ)でフォルダ指定を相対パスにする方法

Power Query(パワークエリ)のデータソース場所は絶対パスでの指定しかできないようだ。

データソースとなるファイルの場所を変更した場合、都度変更の手間が発生する。

 

社外など別環境の人に渡したり、毎月などデータソースの場所を都度変更したい場合など、どのようにデータソースを変更するかで悩む。

特に、Power Queryに慣れていない人に渡すには、データソースの変更は難易度が若干高い。

 

その解決方法の一つとして、データソースを相対パスにする方法がある。

ただし、相対パスでのフォルダ指定は、セキュリティ面でのリスクも検討必要らしいが、使い方を限定していれば問題なさそう。

とりあえず、手順のメモと、その他の方法を整理。

 

まず、相対パスの設定方法として、参考になった情報。

sakatakablog.com

 

ポイントとなりそうなのは、次の点。

  1. 読み込む先(Power Queryがあるファイル)と、対象データを同じフォルダ内とする
  2. Excelの数式で、相対パスの情報(その絶対パス)を抽出し、Excelのテーブルを作成する
  3. Power Queryの詳細エディターで、上記2の情報を変数として利用する設定をする。(2箇所)

 

なお、次のような情報もあったので、一応参考に。

要は、上記1の「読み込む先(Power Queryがあるファイル)と、対象データを同じフォルダ内とする」というケースなら問題がなさそう。自分の使い方では、セキュリティのエラー等も発生しなかった。

 

memo.furyutei.com

 

その他の方法

その他の方法に、相対パスの情報(その絶対パス)を、Excelのテーブルではなく「名前の定義」の機能を使うものもある。個人的な印象でしかないが、「名前の定義の重複エラーが苦手」なので、とりえず上記のテーブルの機能を使った方法にしようと思う。

 

なお、データソースの変更は以下で「データソースの設定」で、フォルダ(ファイル)の参照を変更することで簡単にできる。

繰り返しの頻度が少ない場合は、まずはこの方法から。