Excelにあるチェックボックスの値を取得する

Excel のデータ所得方法についての質問です。↓のような、チェックボックスがExcelのフォームで埋め込まれていた場合、このオン・オフをどうやって判断すればいいでしょうか?

Sample.xlsx (18.1 KB)

マクロで各チェックボックスの値を取得する方法はあると思っていますが、チェックボックスの名前で取得すると、チェックボックスの名前が重複する可能性があるので、他にいい方法があれば知りたいと思っています。

以上、よろしくお願いします。

UiPathでやるのなら、Find Text Positionで項目名を拾ってきて、その横のチェックボックスを画像で判定する、みたいな感じになると思います。
が、チェックの項目が変動する等の要素があるとかなり不確実です。そうでなくともチェックボックスの判定は色々と変動要素(Windowsのテーマ等)があるので、テストは困難かなと。

@Jumbo さんが書かれているように、マクロだと名前が重複するリスクというのはあるのですが、それを加味しても(セキュリティ設定が緩くなりますが)Invoke VBAを使うなり、マクロにVBAを持たせるのが正解かな、という気がします。
(もう少し上のレイヤーで、チェックボックスに命名規則をつけて重複しないように管理する、等はどちらにせよ必須になると思います)

1 Like

@Honokaさん

回答どうもありがとうございます。アンカーとなるテキスト + チェックボックスくらいなら画像判定でも上手くいく気はしますが、正直信頼はしていないので、マクロ or invoke VBA案で行こうと思います。