PADを構築する際、処理の塊や繰り返し処理をサブフロー化することでコードがすっきりします。ここでは複数のExcelファイルを開くフローをサンプルを使っていきます。
全体概要
このフローは「初期処理」と「Excelファイル読み込み」のサブフローを作成しExcelファイルを読み込み変数に格納します。
下記コードは上から「Main」「初期処理」「Excelファイル読み込み」のフローです。
# サブフローを使用しExcelファイルの内容を変数にセットする
CALL 初期処理
SET tmpFilename TO $'''%RootPath%\\都道府県.xlsx'''
CALL Excelファイル読み込み
SET Todofuken TO tmpTable
SET tmpFilename TO $'''%RootPath%\\市町村.xlsx'''
CALL Excelファイル読み込み
SET Shityouson TO tmpTable
# 初期処理
SET RootPath TO $'''C:\\PowerAutomate'''
# 指定されたExcelファイルを取得する
IF (File.IfFile.DoesNotExist File: tmpFilename) THEN
Display.ShowMessageDialog.ShowMessage Title: SystemName Message: $'''%tmpFilename%が存在しません''' Icon: Display.Icon.Warning Buttons: Display.Buttons.OK DefaultButton: Display.DefaultButton.Button1 IsTopMost: False ButtonPressed=> ButtonPressed
EXIT Code: 0
END
Excel.LaunchExcel.LaunchAndOpenUnderExistingProcess Path: tmpFilename Visible: False ReadOnly: True Instance=> ExcelInstance
Excel.ReadFromExcel.ReadAllCells Instance: ExcelInstance ReadAsText: False FirstLineIsHeader: False RangeValue=> tmpTable
Excel.CloseExcel.Close Instance: ExcelInstance
フローのイメージです。サブフローを作成することでMainフローはすっきりした内容になります。
変数についてはフロー変数とは別に入出力変数を使用することでMainフローとサブフローの変数の受け渡しを行います。
入出力変数について
入出力変数は具体的な値を指定するのではなくデータの種類を指定します。また、規定値の指定が可能ですが省略もできます。外部名はPAD内では使用しません。外部のWeb版のPowerAutomateとの連携で使用します。
サブフローの追加
サブフローの追加は「サブフロー」ボタンから「新しいフロー」をクリックし「サブフロー」画面から追加します。
リンク
コメント