Power Automate for desktopを使って、Excelデータの最終行を取得する方法を解説します。ついでにワークシート内のデータの範囲を把握する方法も身に付けましょう。
それではどうぞ!
Excelデータの最終行を取得する方法
「Excelデータの最終行を取得したい」というときがありますよね。特に列によって行数が異なるデータの場合です。下図の例で解説します。
本来A列、B列、C列のすべてに値が入力されているべき表があると仮定します。A列とC列の列数を取得し、A列とC列の差があるときは未入力セルがあると判断します。この例ではC5、C6のセルが未入力と判断できます。
この例のように、列を指定して最終行を取得する場合は、[Excelワークシートから列における最初の空の行を取得]アクションを使用します。[Excelワークシートから列における最初の空の行を取得]アクションはアクションペインの[Excel]→[詳細]に格納されています。
[Excelインスタンス]のドロップダウンリストで、操作するExcelインスタンスを選択してください。
[列]にはExcelワークシートの列を識別するインデックス番号またはテキスト(A列の場合は「A」)を入力します。インデックス番号を入力する場合、列の付番は1から始まります。
フローを実行すると、[生成された変数]に指定された列の完全に空の最初の列の数値が入ります。作成された変数から1を引くと行数が取得できます。
Excelワークシート内のデータの範囲を把握する方法
「Excelワークシートからデータを取得したいが、Excelワークシート内のデータの範囲がわからない」という場合には、Excelワークシート内のデータの範囲を把握しなければいけません。
データの範囲が何列、何行あるのかを取得するには[Excelワークシートから最初の空の列や行を取得]アクションを使用して、データの最初の空の列と行を取得します。[Excelワークシートから列における最初の空の行を取得]アクションはアクションペインの[Excel]アクショングループに格納されています。
例を使って解説します。
完全に空の最初の列は4列目(D列)なので、データは3列目まで入っていることがわかります。
完全に空の最初の行は7行目なので、データは6行目まで入っていることがわかります。
コメント ログインすると書き込めます
色々勉強になります。
ありがとうございます。
最終行を取得し、テキストを書き込もうとした結果、2行目の想定でしたが何故か最終形が690行になってしまいました。
何か考えうる原因があれば教えていただけますでしょうか。
Kenjiさん、こんにちは。
変数[FirstFreeRow]の値が690になっているんでしょうか?
考えられるとしたら689行目になんらかの値が入っている、くらいですかね。
もう少し詳しい情報があれば、もっと考えられますよ。