昨日の15:00~今日の15:00までに受信したメールの添付ファイルを取得したいです。
[デスクトップ版Outlookアプリを使用]アクティビティを使い、実行の中に[繰り返し(各メール)]アクティビティを入れています。
フィルターを使って、日時の制限をかけたいのですが、既存のフィルターは
BCC, 本文, Cc, 日付, 送信元, 宛先, 件名, カテゴリ
上記しかありません。
試しに3時間以内に受信したメールを対象にしたいと思い、
[日付] [次に等しい] [“[RecivedTime] >='” + Date.Time.Now.addHours(-3).ToString(“MM/dd/yyyy HH:mm tt”) + “'”]
上記のようにしてフィルターを使用してみましたが、
!Main.xaml:式"[RecivedTime] >=‘" + Date.Time.Now.addHours(-3).ToString(“MM/dd/yyyy HH:mm tt”) + "’"の処理中にコンパイルエラーが発生しました。
Option Strict Onで’String’から’Date’への暗黙の型変換はできません。
と出力されてしまいました。
どのようにフィルターを使用すればよいでしょうか?
有識者の方、どうかご教示お願いいたします。
minami
2
そもそもこの式
[RecivedTime] >=‘" + Date.Time.Now.addHours(-3).ToString(“MM/dd/yyyy HH:mm tt”) + “’”
文字列に代入するとして通ります?エラーになりそうな気がするんですが。
手元で試したところ
“[RecivedTime] >=‘” + date.Now().addHours(-3).tostring(“MM/dd/yyyy HH:mm tt”) +“'”
なら通るようですが・・・
1 Like
Yoichi
(Yoichi)
3
こんにちは
繰り返し各メールのフィルターでは細かい指定ができないと思いますので、一旦そこでは2日前以降にしておいて、ループ内での条件分岐を行う方法になるのではと思います。
CurrentMail.DateAsDateTime >Today.AddDays(-1).AddHours(15) AndAlso CurrentMail.DateAsDateTime <=Today.AddHours(15)
1 Like
Yoichi様
いつもお世話になっております。
ご回答いただきありがとうございます。
上記の通り、設定したところ上手く動かすことができました。
この時間設定はタイムゾーンなどは考慮せずに使用して問題ないでしょうか?
また、15:00ではなく、15:30の場合は、AddHours(15).AddMinutes(30)の表記で認識問題ないでしょうか?
重ねての質問になりますが、何卒よろしくお願いいたします。
minami様
ご回答いただきありがとうございます。
minami様にいただいた式で[代入]アクティビティで打ち込んでみたところ、コンパイルエラーは出ませんでした。
しかし、[繰り返し(各メール)]アクティビティではエラーが出てしまい、どのようにすれば"[RecievedTime]~~~"を活用できるのか分かりかねております。
もう少し私の方でも調べてみます。
この度はご協力いただき誠にありがとうございました。
Yoichi
(Yoichi)
6
Outlookからなら大丈夫ではないかと思いますが、念のため例えば海外からのメールの場合、どのような値が返ってくるかは確認しておいた方が良いかと思います。
また、15:00ではなく、15:30の場合は、AddHours(15).AddMinutes(30)の表記で認識問題ないでしょうか?
問題ないと思います。
1 Like
Yoichi様
ご返信いただきありがとうございます。
ご回答を参考にして、フローの作成に取り組みたいと思います。
この度は本当にありがとうございました。
system
(system)
Closed
8
This topic was automatically closed 3 days after the last reply. New replies are no longer allowed.