Power Automate Desktop(PAD)でExcelの最終行を取得する方法を解説します。
空白行を含む場合
以下のように、Excelに空白行を含む場合の最終行の取得方法を解説します。
Excelの起動
まずはじめに、Excelを起動します。
Excelウィンドウにフォーカスする
次に、Excelを最前面にもってくるために、「ウィンドウにフォーカスする」アクションを追加します。このアクションを追加しないと、後続の処理に失敗する場合があります。
- ウィンドウの検索モード:ウィンドウのインスタンス/ハンドルごと
- ウィンドウ インスタンス:%ExcelInstance%
に設定します。
キーの送信1
次に、「キーの送信」アクションを追加します。
「送信するテキスト」には、以下をコピーしてそのまま貼り付けてください。
{Control}{Home}
こちらは、A1セルに移動するショートカットキーです。
キーの送信2
もうひとつ、「キーの送信」アクションを追加します。
「送信するテキスト」には、以下をコピーしてそのまま貼り付けてください。
{Control}{End}
こちらは、Excelシート内の、空白をふくむ一番最終の行に移動するショートカットキーです。
アクティブセルの取得
最後に、アクティブになっているセルの座標を取得します。
「Excelワークシート内のアクティブなセルを取得」アクションを追加します。中身はそのままでOKです。
動作確認
フロー全体は以下のようになります。
このフローを実行すると、アクティブセルの位置が最終行に移動し、
フロー変数の、ActiveCellColumnIndexに、アクティブなセルの列である2が、
ActiveCellRowIndexに、アクティブなセルの行である6が格納されます。
最終行取得は -1すればよい
セルの値が入っている最終行を取得したい場合は、「変数の設定」アクションを追加し、ActiveCellRowIndexをマイナス1すればOKです。
このとき、変数名はデフォルトではNewVarとなっていますが、分かりやすくするためにLastRowと変更しています。
%ActiveCellRowIndex - 1%
まとめ
今回は、Power Automate Desktop(PAD)でExcelの最終行を取得する方法について解説しました。
「Excelワークシートから空の行や列を取得」では、途中に空行が入っている場合に、最終行を取得することができません。もし、途中に空行が入っている場合は今回の方法を使うと最終行が正しく取得することができます。
当ブログでは、Power Automate、Power Automate Desktopに関する記事を他にも投稿しています。もし、「このようなことが知りたい」「こんなフローの作り方が知りたい」等ございましたら、問い合わせやコメントからお気軽にご連絡ください。
コメント