アプリ版:「スタンプのみでお礼する」機能のリリースについて

Excelにて
Power Queryにsample.csvをインポートしてあります。

これを別のパスにある sample2.csv に差し替えるとき、
・ファイルパスが変わった
・ファイル名が変わった等(データのレイアウトは同じです)
以下の手順でCSVを入れ替えています。

Excel上部メニュー → データ → クエリと接続 → sample をダブルクリック
→ sample - Power Query エディター が起動
→ データソース設定 → ソースの変更 → 参照ボタンから新しいパスのsample2.csv を選択
→ OK → 閉じる → 閉じて読み込む

これを
Sheet1のA1セルに「ファイルパス\CSVファイル名」の情報を入力しておいて、
その情報に入れ替えるにはどうしたらよいでしょうか?

A 回答 (4件)

何故共有利用するファイルを ローカルフォルダのそれも個人データ


保管用の場所に保存するんでしょうか…… そっちを見直したほう
が早いとは思います。

> 複数のPC上でこれをやりたいとなった時、統一してできる記述はないでしょうか?
https://www.relief.jp/docs/wscript-shell-desktop …
この辺り参考にして VBAで起動時に A1セルを書き換えれば デスク
トップの Pathは取得できます。ただし「デスクトップ」が VDI環境
だと WshShellオブジェクトは使えないので別の方法が必要です。
    • good
    • 0

もうひとつ方法を挙げるとするなら CSVファイルを決まったフォルダ


に保存するようにして クエリを「フォルダから」で作成します。
この場合 いちいちファイル名を気にしなくてもよくなります。
細かい補正がしづらいので個人的にはやりませんが。
    • good
    • 0

作ったクエリにファイル名を読み込むだけです。



例えば A1にフルパスを入力するとするなら A1を「参照元」と名前
定義しておきます。

後は作成したクエリを編集で開いて [詳細エディタ]を開く
最初の「let」と「ソース」の間に一行追加して

let
参照元 = Excel.CurrentWorkbook(){[Name="参照元"]}[Content]{0}[Column1],
ソース = Csv.Document(File.Contents(参照元),…省略…),
in
ソース

のようにすればいいです。

カスタム関数を作ってもいいしテーブルを読み込んでもいいでしょう
けど 多分上記の方法が最も簡単です。
    • good
    • 1
この回答へのお礼

ありがとうございます。
もう一つお聞きしても良いでしょうか?

デスクトップ上に、「集計」→「CSV」フォルダに入れるとします。
パスで言うと Desktop\集計\CSV です。
複数のPC上でこれをやりたいとなった時、統一してできる記述はないでしょうか?
今は別にPCに配布する毎にPath設定をしています。

お礼日時:2021/04/20 21:33

こんにちは



Power Query自体を使ったことがないので、以下は、ざっと調べてみただけです。


QueriesオブジェクトからQueryを取得すれば、Formulaプロパティで内容を取得できるようです。
https://docs.microsoft.com/ja-jp/office/vba/api/ …

クエリの内容は、「M 言語」というもので書かれているらしいので、そちらで正しく入れ替えてあげればできそうな気がします。
https://docs.microsoft.com/ja-jp/powerquery-m/po …


糸口としてのヒントのみで、確認は一切行っておりません。
これ以上の情報については、上記をヒントにご自身で調べてみてください。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています