shikumika’s diary

日々の事務作業で手間なことを簡単にできる仕組み(自動化、方法など)、困ったことの解決方法を調べた備忘録

【Power Automate】ワークシートに含まれる使用可能なすべての値(データ取得事例と注意点)

Power Automate Desktopには「Excelワークシートから読み取る」というアクションがあり、セルの値を読み取り、転記などの自動化が可能です。このアクションの設定値で「ワークシートに含まれる使用可能なすべての値」を選択すると、どのようにデータ取得されるのかの事例と、セル結合時には注意が必要な点の備忘録。

なお、使用のツールは「Power Automate Desktop」(version 2.34.187.23206)。

内容:

基本的な知識

指定したExcelのアクティブなワークシートにおいて「ワークシートに含まれる使用可能なすべての値」を取得可能。

標準的な設定画面

「Excelワークシートから読み取る」の設定画面

このとき、シートと取得できる変数の値は次のようになる。セル範囲$B$2から$E$5の表(一部、空白のセルあり)で、変数の値は5行5列のDatatableが取得されている。

詳細の仕様は不明だが、「ワークシートに含まれる使用可能なすべての値」というのは個々の値というよりも、空白も含めた使用しているセル範囲という印象。

5行5列のDatatableが取得される

セル範囲$B$2から$E$5の表

なお、変数の値は、編集画面で変数の値をダブルクリックすることで確認可能。詳細は次のとおり。

learn.microsoft.com

取得事例と注意が必要な点

注意が必要なセル結合のタイプ

先に注意が必要な点を説明すると、セル結合されているケースは意図と異なる値になる可能性がある(後述するが、セル結合が表範囲の境界まであるケース)。

例えば、次のように黄色部がセル結合されていると、データが欠落する

5行3列のDatatableが取得されており、2列欠落している。

5行3列のDatatableが取得されて2列欠落

セル範囲$B$2から$E$5の範囲の表(黄色部セル結合)
問題のないセル結合のタイプ

セル結合の全てでデータ欠落するのではなく、次のようなセル結合(黄色部)は、問題なくデータ取得できている。

十分に検証できていないが、セル結合が表範囲の境界まであるケースでデータ欠落が発生する見込で、注意が必要。

5行5列のDatatableが取得される

セル範囲$B$2から$E$5の範囲の表(黄色部セル結合、前述より範囲小)
Nullが多い場合の取得事例

念のため、Nullが多い場合を確認してみた。次のように上端や左端などが空欄の場合の取得事例。問題なくデータ取得できている。

5行5列のDatatableが取得される

セル範囲$B$2から$E$5の範囲の表(空欄が多い場合)

以上、Power Automate Desktopの「ワークシートに含まれる使用可能なすべての値」で、データ取得事例と、セル結合時には注意が必要という備忘録でした。