Power Automate for desktopで「引数DatetimeはDateTimeである必要があります」のエラーメッセージの対処方法

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

登場人物

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


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

🧑‍💻 部下:「せんぱーい!! ロボットがまたまたキレてるっす!!😱」

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

🧑‍💻 部下:「えっと……『引数DatetimeはDateTimeである必要があります』って出たっす!! えっ!? DatetimeはDateTimeである必要がありますって…? なんか言ってることがわかんないっす!!😵‍💫」

👨‍💼 上司:「うん、これは**『DateTimeの引数に、ちゃんとした日付データを入れてください』**っていう意味のエラーだね。」

🧑‍💻 部下:「えええ!? でもオレ、ちゃんと日付っぽいの入れたっすよ!?」

👨‍💼 上司:「じゃあ、どこが間違ってるのか一緒にチェックしてみよう!」


① 文字列(テキスト)のまま日付を入れてないかチェック!

👨‍💼 上司:「まず、日付をそのままテキスト(文字列)で入れてないか確認しよう。」

🧑‍💻 部下:「えっ!? 『2024-02-05』って書いたら、それもう日付じゃないんすか?」

👨‍💼 上司:「それ、まだただの文字扱いなんだよ。」

まちがい

日付 = "2024-02-05"

👨‍💼 上司:「このままだとPower Automateは『これ、ただの文字でしょ? どうやって日時にするの?』って混乱しちゃうんだ。」

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

ただしい書きかた

日付 = Convert.ToDateTime("2024-02-05")

🧑‍💻 部下:「おおお! ちゃんと 『テキスト → 日付』 に変換 するのが大事なんすね!」

👨‍💼 上司:「そういうこと!」


② 日付のフォーマットが間違ってないかチェック!

👨‍💼 上司:「次に、日付のフォーマットが正しいかを確認しよう。」

🧑‍💻 部下:「フォーマット?? なんでもいいんじゃないんすか?」

👨‍💼 上司:「実は、書き方を間違えるとPower Automateが理解できないことがあるんだよ。」

まちがい

日付 = Convert.ToDateTime("2024年2月5日")

👨‍💼 上司:「これだと、『年』とか『月』とかが入ってて、Power Automateは理解できないことがある。」

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

ただしい書きかた

日付 = Convert.ToDateTime("2024-02-05")  // yyyy-MM-dd形式がオススメ!

🧑‍💻 部下:「なるほどー! 『yyyy-MM-dd』 形式 にすればOKなんすね!」

👨‍💼 上司:「そう! 他にも『yyyy/MM/dd』とかあるけど、統一することが大事だよ。」


③ 変数の中身をチェック!

👨‍💼 上司:「次に、変数にちゃんと日付が入っているかチェックしよう!」

🧑‍💻 部下:「えっ!? 変数って、書いたらもう絶対大丈夫じゃないんすか?」

👨‍💼 上司:「それが、変数の中身が空だったり、違うデータが入ってるとエラーになるんだ。」

まちがい

日付 = ""
日付 = Convert.ToDateTime(日付) // 何もないからエラー!

🧑‍💻 部下:「うわっ!! 何もないのに変換しようとしてるっすね!」

👨‍💼 上司:「そう! だから、変換する前に**『値が空じゃないか』を確認する**のが大事!」

解決策

If 日付 <> "" Then
日付 = Convert.ToDateTime(日付)
Else
MessageBox.Show("日付が空です!")
End If

🧑‍💻 部下:「おおお! ちゃんとチェックすれば、エラーを防げるんすね!」


④ そもそも引数に渡している変数が「DateTime型」かチェック!

👨‍💼 上司:「最後に、引数として渡してる変数が本当にDateTime型かどうかチェックしよう!」

🧑‍💻 部下:「えっ!? 変数の種類とかあるんすか!?」

👨‍💼 上司:「あるよ! たとえば、こんな間違い。」

まちがい

日付 = "2024-02-05"

👨‍💼 上司:「これはさっきも言ったけど、テキストのままだからエラーになる。ちゃんとDateTime型にする必要があるんだ。」

ただしい書きかた

日付 = Convert.ToDateTime("2024-02-05")

🧑‍💻 部下:「おおお! ちゃんと変数の型を意識するのが大事なんすね!」


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

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

① 日付をテキストのまま使わず、Convert.ToDateTimeで変換する!
② 日付のフォーマットを統一する!(yyyy-MM-dd 形式がオススメ!)
③ 変数の中身が空じゃないか確認する!
④ 変数がちゃんとDateTime型になっているかチェックする!

🧑‍💻 部下:「せんぱい、まじ神っす!! もう日付エラーは怖くないっす!!」

👨‍💼 上司:「(ほんとかな…) じゃあ次は、ロボットにスケジュールを管理させる方法でもやってみる?」

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

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

この記事を書いた人

目次