[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『パワークエリ パス変動 エラー』(ちょこ)
パワークエリのパス変動が上手くできません
作成方法は↓を参考にしてます
https://akmemo.info/powerquery-relative-path/
私のPCではエラーなく成功したと思ったのですが
他のPCから開くと
フォルダーが見つかりません C:\...
とエラーがでます
エラーのアドレスは私のPCとなってます
TBフォルダから一括して結合しています
そのテーブルの詳細エディターは↓(省略あり)
ファイルのパスは問題ないです
let ファイルパス = Excel.CurrentWorkbook(){[Name="パス"]}[Content]{0}[ファイルパス], ソース = Folder.Files(ファイルパス & "TB"), #"フィルター選択された非表示の File1" = Table.SelectRows(ソース, each [Attributes]?[Hidden]? <> true), カスタム関数の呼び出し1 = Table.AddColumn(#"フィルター選択された非表示の File1", "ファイルの変換", each ファイルの変換([Content])), #"名前が変更された列 1" = Table.RenameColumns(カスタム関数の呼び出し1, {"Name", "Source.Name"}), 削除された他の列1 = Table.SelectColumns(#"名前が変更された列 1", {"Source.Name", "ファイルの変換"}), 展開されたテーブル列1 = Table.ExpandTableColumn(削除された他の列1, "ファイルの変換", Table.ColumnNames(ファイルの変換(#"サンプル ファイル"))), 変更された型 = Table.TransformColumnTypes(展開されたテーブル列1,{{"コード", type text}}), #"名前が変更された列 " = Table.RenameColumns(変更された型,{{"Source.Name", "ファイル名"}}), 区切り記号による列の分割 = Table.SplitColumn(#"名前が変更された列 ", "ファイル名", Splitter.SplitTextByDelimiter("_", QuoteStyle.Csv), {"ファイル名.1", "ファイル名.2", "ファイル名.3"}), 変更された型1 = Table.TransformColumnTypes(区切り記号による列の分割,{{"ファイル名.1", type text}, {"ファイル名.2", type text}, {"ファイル名.3", type text}}),
< 使用 Excel:Microsoft365、使用 OS:Windows10 >
>他のPCから開くと
他のPCに、TBという名前のフォルダはありますか (マナ) 2023/10/03(火) 17:57:10
>ファイルのパスは問題ないです
エラーが出るステップは、どこですか
ソース カスタム関数の呼び出し1 (マナ) 2023/10/03(火) 18:11:42
ここですかね
>展開されたテーブル列1 = Table.ExpandTableColumn(削除された他の列1, "ファイルの変換", Table.ColumnNames(ファイルの変換(#"サンプル ファイル"))) (マナ) 2023/10/03(火) 18:41:44
1)たぶん、これでエラーはでなくなります。
> Table.ColumnNames(ファイルの変換(#"サンプル ファイル")) ↓ Table.ColumnNames(削除された他の列1{0}[ファイルの変換])
2)もしくは、ヘルパークエリの中の、サンプルファイルのソースを修正する
3)もしくは、「展開されたテーブル列1 」のステップを手動でやりなおす。 (マナ) 2023/10/03(火) 19:55:57
↑は3)が一番カンタンですが、元テーブルの列名が変わるとエラーになります。 (マナ) 2023/10/03(火) 20:05:25
更新でエラーが出たのでどこか確認してなかったです
エラーの出るステップ確認してみます
(ちょこ) 2023/10/03(火) 20:16:42
エラーが出ます
Formula.Firewall: クエリ 'サンプル ファイル' (ステップ 'ナビゲーション1') が、同時に使用できないプライバシー レベルの複数のデータ ソースにアクセスしています。このデータの組み合わせを再構築してください。
let ファイルパス = Excel.CurrentWorkbook(){[Name="パス"]}[Content]{0}[ファイルパス], ソース = Folder.Files(ファイルパス & "TB"), ナビゲーション1 = ソース{0}[Content] in ナビゲーション1
(ちょこ) 2023/10/04(水) 08:57:29
はトークンが必要です
と表示され
展開されたテーブル列1 = Table.ExpandTableColumn(削除された他の列1, "ファイルの変換", Table.ColumnNames(削除された他の列1,{0},[ファイルの変換]),
色々と試してみたけど
トークンが必要ですが消えません
(ちょこ) 2023/10/04(水) 09:24:56
> 展開されたテーブル列1 = Table.ExpandTableColumn(削除された他の列1, "ファイルの変換", Table.ColumnNames(削除された他の列1,{0},[ファイルの変換]),
カンマが多い。閉じカッコが足りない。
展開されたテーブル列1 = Table.ExpandTableColumn(削除された他の列1, "ファイルの変換", Table.ColumnNames(削除された他の列1{0}[ファイルの変換])),
(マナ) 2023/10/04(水) 10:46:07
↓
ソース = Folder.Files(パス & "TB"),
私のPCではエラーは出なくなったけど
他のPCではエラー
↓
他のクエリまたはステップを参照しているため、
データソースに直接アクセスできません。
このデータの組み合わせを再構築してください
ちなみに、プライバシーレベルは組織にしてます
(ちょこ) 2023/10/04(水) 10:50:43
1)同じようにサンプルファイル(2)を修正したら 無効な識別子とエラーが出ます
修正後
↓
削除された他の列1 = Table.SelectColumns(#"名前が変更された列 1", {"Source.Name", "ファイルの変換 (2)"}), 展開されたテーブル列1 = Table.ExpandTableColumn(削除された他の列1, "ファイルの変換 (2)", Table.ColumnNames(削除された他の列1{0}[ファイルの変換 (2)])), (ちょこ) 2023/10/04(水) 11:26:09
> "ファイルの変換 (2)" ↓ #"ファイルの変換 (2)"
#を追加
(マナ) 2023/10/04(水) 11:56:27
(マナ) 2023/10/04(水) 12:01:21
こうかな? 展開されたテーブル列1 = Table.ExpandTableColumn(削除された他の列1, "ファイルの変換 (2)", Table.ColumnNames(削除された他の列1{0}[#"ファイルの変換 (2)"])), (マナ) 2023/10/04(水) 12:16:20
2)稼働の確認
リボン>すべて更新でエラー
クエリ'サンプルファイル(2)'(ステップ'ナビゲーション1’)は 他のクエリまたはステップを参照しているため、データソースに直接アクセス できません。このデータの組合せを再構築してください
3)サンプルファイル、サンプルファイル(2)エラー
Formula.Firewall: クエリ 'サンプル ファイル' (ステップ 'ナビゲーション1') が、 同時に使用できないプラ イバシー レベルの複数のデータ ソースにアクセスしています。 このデータの組み合わせを再構築してください。 ↑ ソース = Folder.Files(パス & "TB"), この変更が原因でしょうか
let ファイルパス = Excel.CurrentWorkbook(){[Name="パス"]}[Content]{0}[ファイルパス], ソース = Folder.Files(ファイルパス & "TB"), ナビゲーション1 = ソース{0}[Content] in ナビゲーション1 に戻してプライバシーレベルを常に無視するにした方がよいのでしょうか
サンプルファイルの詳細エディター
let ソース = Folder.Files(パス & "TB"), ナビゲーション1 = ソース{0}[Content] in ナビゲーション1
サンプルファイル難しいですね
(ちょこ) 2023/10/04(水) 13:26:06
ソース = Folder.Files(パス & "TB"), ↓ ファイルパス = Excel.CurrentWorkbook(){[Name="パス"]}[Content]{0}[ファイルパス], ソース = Folder.Files(ファイルパス & "TB"),
プライバシーレベルを常に無視
2)、3)のエラーは出なくなりました
でもこれで大丈夫なのでしょうか
サーバー内で利用予定です
サーバーのセキュリティは高いけど、できれば職場で稼働できるとうれしいかも
(ちょこ) 2023/10/04(水) 13:42:12
> ファイルパス = Excel.CurrentWorkbook(){[Name="パス"]}[Content]{0}[ファイルパス], > ソース = Folder.Files(ファイルパス & "TB"),
↑のサンプルファイル(2)の編集は不要。 ヘルパークエリは一番最初の状態で。
つまり、変更するのは↓だけ。 Table.ColumnNames(削除された他の列1{0}[#"ファイルの変換 (2)"])
これだと、どうなりますか。
(マナ) 2023/10/04(水) 13:57:26
>プライバシーレベルを常に無視 https://memo.furyutei.com/entry/20220119/1642519146
ヘルパークエリを使わない場合は、
列の追加/カスタム列 で =Excel.Workbook(File.Contents([Folder Path] & [Name]),true)
let ファイルパス = Excel.CurrentWorkbook(){[Name="パス"]}[Content]{0}[ファイルパス], ソース = Folder.Files(ファイルパス & "TB"), 追加されたカスタム = Table.AddColumn(ソース, "カス タム", each Excel.Workbook(File.Contents([Folder Path] & [Name]),true)), 削除された他の列 = Table.SelectColumns(追加されたカスタム,{"Name", "カス タム"}), #"展開された カスタム" = Table.ExpandTableColumn(削除された他の列, "カス タム", {"Data"}, {"Data"}) in #"展開された カスタム" (マナ) 2023/10/04(水) 14:11:16
プライバシーレベルを聞いてきて→組織を選択→エラー
クエリ 'サンプル ファイル' (ステップ 'ナビゲーション1') は他のクエリまたはステップを参照しているため、 データソースに直接アクセスできません。 このデータの組み合わせを再構築してください
(ちょこ) 2023/10/04(水) 14:46:40
エラー
Expression.Error: テーブルの列 'Name' が見つかりませんでした。 詳細: Name
やっぱり常に無視はやめたいですね
(ちょこ) 2023/10/04(水) 15:00:55
> Expression.Error: テーブルの列 'Name' が見つかりませんでした。
どのステップでエラー? (マナ) 2023/10/04(水) 15:22:17
ブックは「組織」、その次は「パブリック」はエラーでした
クエリ 'サンプル ファイル' (ステップ 'ナビゲーション1') は他のクエリまたはステップを参照しているため、 データソースに直接アクセスできません。 このデータの組み合わせを再構築してください
これで様子を見ようと思います
(マナ) 2023/10/04(水) 14:11:16このコードのおかげだと思います
ありがとうございます
(ちょこ) 2023/10/04(水) 15:57:10
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.