Power Automate Desktop(PAD)でExcelを使う方法をメモしていきます。
ループを使う
ループを使ってA列の1行から3行に数値をセットします。
◎Excelの起動
Excelの起動=空のドキュメントを使用
インスタンスを表示する=オン
▼Loop
開始値=1
終了=3
増分=1
◎Excelワークシートに書き込む
Excelインスタンス=%ExcelInstance%
書き込む値=%LoopIndex%
書き込みモード=指定したセル上
列=1
行=%LoopIndex%
▲End
Excelの起動=空のドキュメントを使用
インスタンスを表示する=オン
▼Loop
開始値=1
終了=3
増分=1
◎Excelワークシートに書き込む
Excelインスタンス=%ExcelInstance%
書き込む値=%LoopIndex%
書き込みモード=指定したセル上
列=1
行=%LoopIndex%
▲End
二重ループを使う
二重ループを使ってA列からE列まで、1行から3行まで数値をセットします。
二重ループのときのLoopIndexの使い方が分からないので、別に変数を設定しています。
◎Excelの起動
Excelの起動=空のドキュメントを使用
インスタンスを表示する=オン
◎変数の設定
変数=RowNumber
値=0
▼Loop
開始値=1
終了=3
増分=1
◎変数を大きくする
変数名=RowNumber
大きくする数値=1
◎変数の設定
変数:ColNumber
値:0
▼Loop
開始値=1
終了=5
増分=1
◎変数を大きくする
変数名=ColNumber
大きくする数値=1
◎Excelワークシートに書き込む
Excelインスタンス=%ExcelInstance%
書き込む値=%RowNumber * ColNumber%
書き込みモード=指定したセル上
列=%ColNumber%
行=%RowNumber%
▲End
▲End
Excelの起動=空のドキュメントを使用
インスタンスを表示する=オン
◎変数の設定
変数=RowNumber
値=0
▼Loop
開始値=1
終了=3
増分=1
◎変数を大きくする
変数名=RowNumber
大きくする数値=1
◎変数の設定
変数:ColNumber
値:0
▼Loop
開始値=1
終了=5
増分=1
◎変数を大きくする
変数名=ColNumber
大きくする数値=1
◎Excelワークシートに書き込む
Excelインスタンス=%ExcelInstance%
書き込む値=%RowNumber * ColNumber%
書き込みモード=指定したセル上
列=%ColNumber%
行=%RowNumber%
▲End
▲End
データテーブルを一気にExcelワークシートに書き込む方法
データテーブルを使って一気にワークシートに書き込む方法を探しているのですが見つかりません。どれもちまちまセルごとに貼り付ける方法ばかりです。
試行錯誤の末、ようやく分かりましたので紹介します。
ここでは次のような表を考えます。
◎新しいデータテーブルを作成する
新しいテーブル=2行,2列
変数=DataTable
<img src="https://stabucky.com/wp/wp-content/uploads/2022/12/datatable.png" alt="" width="171" height="104" class="alignnone size-full wp-image-15948" />
◎Excelの起動
Excelの起動=空のドキュメントを使用
インスタンスを表示する=オン
◎Excelワークシートに書き込む
書き込む値=%{DataTable.ColumnHeadersRow.ColumnNames }%
書き込みモード=指定したセル上
列=1
行=1
◎Excelワークシートに書き込む
書き込む値=%DataTable%
書き込みモード=指定したセル上
列=1
行=2
新しいテーブル=2行,2列
変数=DataTable
<img src="https://stabucky.com/wp/wp-content/uploads/2022/12/datatable.png" alt="" width="171" height="104" class="alignnone size-full wp-image-15948" />
◎Excelの起動
Excelの起動=空のドキュメントを使用
インスタンスを表示する=オン
◎Excelワークシートに書き込む
書き込む値=%{DataTable.ColumnHeadersRow.ColumnNames }%
書き込みモード=指定したセル上
列=1
行=1
◎Excelワークシートに書き込む
書き込む値=%DataTable%
書き込みモード=指定したセル上
列=1
行=2
「Excelワークシートに書き込む」が二つあります。
一つ目が見出しです。
%{DataTable.ColumnHeadersRow.ColumnNames }%
とするとデータテーブルの見出しを取ることができます。これがポイントです。
これを1行目に書き込みます。
二つ目がレコード部分です。
%DataTable%
とするとレコード部分だけを取ることができます。
ということで、これを2行目から書き込みます。
コメント