日々、PowerAutomateに躓いている、しろいおもちです。
みなさんのFx関数のLookUp(商品データテーブルで、商品コードから商品名を取得する、等を実現する関数)は、列名を指定して正常に動作していますか?
私の環境では標準的な方法では動作しませんでした。
以下に、標準と思っているけどエラーになる方法と、うまくいく方法を記載しますので、困っている方の参考になれば幸いです。(というか、標準の方法で動作する方法を教えてください。(^^; )
・想定
商品マスタのExcelファイルを元にデータテーブルを作成し、商品コードを検索キーとして、商品名を取得する。
<商品マスタ.xlsx>
商品コード, 商品名
S001, みかん
S002, リンゴ
1.標準的なフロー(エラーになる)
(1)Excelの起動アクション
商品マスタ.xlsxを開く
>ExcelInstanceが生成される
(2)Excelワークシートから読み取るアクション
ExcelInstanceから商品マスタをデータテーブル変数を作成
>ExcelDataが生成される
※詳細>範囲の最初の行に列名が含まれています、をONにする
(3)Excelを閉じるアクション
>Excelを閉じる
(4)変数の設定アクション
例)ExcelDataデータテーブルを商品コード"S002"で検索し、
商品名"リンゴ"を取得する。
値:= LookUp(ExcelData, 商品コード = "S002", 商品名)
>「商品コード」「商品名」がない、というエラーになり、実行出来ない。
2.うまくいく方法
(1)~(3)標準的なフローに同じ
New(4)変数の設定アクション
データテーブルをテーブル?に変換する
値:= Table(ExcelData)
>FxTableテーブルが生成される
New(5)変数の設定アクション
例)FxTableテーブルを商品コード"S002"で検索し、
商品名"リンゴ"を取得する。
値:= LookUp(FxTable, ThisRecord.Value.'商品コード' = "S002", ThisRecord.Value.'商品名')
>設定した変数に商品名が取得される!
今回の方法は、TechnicalTrainingSolutionsさんのYoutube動画(youtube.com/watch?v=sEej-Mee-_s)を参考にさせていただきました。
貴重な情報をありがとうございました。
それでは、また!