Power Automate for desktopで「Excelインスタンス変数◯◯が存在しません」のエラーメッセージの対処方法

  • URLをコピーしました!
目次

登場人物

👨‍💼 上司(やさしい先輩):Power Automate Desktopに詳しく、部下のミスをやさしく指摘する。
🧑‍💻 部下(ちょっとポンコツ):がんばるけど、たまに変なミスをする新人。


部下、またまたエラーで大混乱!?

🧑‍💻 部下:「せんぱーい!! ロボットがまたまたワケわかんないこと言ってるっす!!😱」

👨‍💼 上司:「今度は何をやらかした?」

🧑‍💻 部下:「えっと……**『Excelインスタンス変数◯◯が存在しません』**って出たっす!!💦」

👨‍💼 上司:「なるほど、それは**『指定されたExcelインスタンスが見つからないよ!』**っていうエラーだね。」

🧑‍💻 部下:「えええ!? でもオレ、ちゃんとExcelのファイル開いたっすよ!? それじゃダメなんすか!?💦」

👨‍💼 上司:「うーん、たぶんどこかでミスしてるね。一緒にチェックしてみよう!


① Excelインスタンスを作らずに操作しようとしてないかチェック!

👨‍💼 上司:「まず、Excelインスタンスを作らずにいきなり操作しようとしてないか確認しよう。」

🧑‍💻 部下:「えっ!? Excelのファイルがあれば、もう開いたことになってるんじゃないんすか!?💦」

👨‍💼 上司:「いやいや(笑)。Power Automateは、Excelを操作する前に**『Excelインスタンス』を作らないとダメ**なんだよ。」

まちがい

Excelワークシートから読み取る(Excelインスタンス, "A1")

👨‍💼 上司:「こう書くと、Power Automateが『Excelインスタンス? そんなの知らないよ!』ってなるんだ。」

🧑‍💻 部下:「えええ!? じゃあ、どうすればいいんすか!?💦」

正しい書きかた(まずExcelを開く!)

Excelインスタンス = Excelを開く("C:\Users\Taro\Documents\Excelファイル.xlsx")

👨‍💼 上司:「こうやって、まずExcelを開いて、それをインスタンスとして変数に入れるんだよ!」

🧑‍💻 部下:「おおお! Excelインスタンスを作らないとロボットが迷子になる! これ、大事っすね!」


② Excelインスタンスの変数名が間違ってないかチェック!

👨‍💼 上司:「次に、変数の名前が間違ってないかチェックしよう!」

🧑‍💻 部下:「えっ!? 変数の名前ってちょっと違っても通じるんじゃないんすか?」

👨‍💼 上司:「いやいや(笑)。たとえば、こういうミスをしてない?」

まちがい

Excelデータ = Excelを開く("C:\Users\Taro\Documents\Excelファイル.xlsx")
Excelワークシートから読み取る(Excelインスタンス, "A1") // 変数名が違う!

👨‍💼 上司:「『Excelデータ』っていう変数を作ったのに、『Excelインスタンス』っていう存在しない変数を使ってるからエラーになるんだ。」

🧑‍💻 部下:「うわっ!! ちゃんと変数の名前を統一しないとヤバいやつっすね!!😱」

正しい書きかた(変数名を統一する)

Excelインスタンス = Excelを開く("C:\Users\Taro\Documents\Excelファイル.xlsx")
Excelワークシートから読み取る(Excelインスタンス, "A1")

🧑‍💻 部下:「なるほどー! 変数の名前はちゃんと統一する! これ、メモしとくっす!」


③ Excelインスタンスを途中で閉じてないかチェック!

👨‍💼 上司:「次に、Excelを閉じた後にインスタンスを使おうとしてないかチェックしよう!」

🧑‍💻 部下:「えっ!? Excelって閉じたらもう使えないんすか!?💦」

👨‍💼 上司:「そう! 『Excelを閉じる』を実行した後に、インスタンスを使おうとするとエラーになるんだ。」

まちがい

Excelインスタンス = Excelを開く("C:\Users\Taro\Documents\Excelファイル.xlsx")
Excelを閉じる(Excelインスタンス)
Excelワークシートから読み取る(Excelインスタンス, "A1") // すでに閉じてる!

👨‍💼 上司:「Excelを閉じちゃったら、もうそのインスタンスは使えないんだよ。」

解決策(閉じる前に処理をする)

Excelインスタンス = Excelを開く("C:\Users\Taro\Documents\Excelファイル.xlsx")
Excelワークシートから読み取る(Excelインスタンス, "A1")
Excelを閉じる(Excelインスタンス)

🧑‍💻 部下:「おおお! 閉じる前にちゃんと処理を終わらせる! これ、大事っすね!」


④ 変数が空(Null)になってないかチェック!

👨‍💼 上司:「最後に、変数が空(Null)になってないかチェックしよう!」

🧑‍💻 部下:「えっ!? 変数って、書いたらもう勝手に入ってるもんじゃないんすか?」

👨‍💼 上司:「いや、もしExcelが開けなかった場合、変数の中身が空(Null)になることがあるんだよ。」

まちがい

Excelインスタンス = Null
Excelワークシートから読み取る(Excelインスタンス, "A1") // 何もない!

👨‍💼 上司:「この状態だと、Power Automateは『Excelインスタンスが見つからない!』ってエラーを出すんだ。」

解決策(変数が空じゃないかチェックする)

If Excelインスタンス <> Null Then
Excelワークシートから読み取る(Excelインスタンス, "A1")
Else
MessageBox.Show("Excelインスタンスが空です!")
End If

🧑‍💻 部下:「おおお! ちゃんと 変数が空じゃないかチェック すれば安心っすね!」


まとめ:エラーをなおすポイント!

👨‍💼 上司:「じゃあ、今日のまとめ!」

① Excelインスタンスを作らずに操作しようとしてないかチェック!
② 変数の名前を間違えてないかチェック!
③ Excelを閉じた後にインスタンスを使ってないか確認!
④ 変数が空(Null)じゃないかチェック!

🧑‍💻 部下:「せんぱい、まじ神っす!! もうExcelインスタンスのエラーは怖くないっす!!」

👨‍💼 上司:「(ほんとかな…) じゃあ次は、ロボットにExcelのデータを書き込ませる方法でもやってみる?」

🧑‍💻 部下:「やるっす!!🔥」

よかったらシェアしてね!
  • URLをコピーしました!

この記事を書いた人

目次