電子メールオブジェクトを日付でフィルタリングし、配列に基づいてアイテムを返すOutlookマクロがあります。それは今日受け取った電子メールのために完全に働くが、私はそれを昨日受け取った電子メールにフィルターにかけることを試みることに問題がある。今日のフィルタは、次のとおりです。Outlookのアイテム制限付き日付の問題
sFilterは文字列で、これは意図したとおりの項目を返します。以下は私が昨日にフィルタリングしようとしたものですが、正しい項目を返さないものはありません。
sfilter = "[ReceivedTime]>=""&Date(-1) 12:00am&"" AND [ReceivedTime]<= ""&Date() 12:00am&"" "
tfilter = Format(DateAdd("d", -1, Date), "mm/dd/yyyy")
rFilter = Format(DateAdd("d", 0, Date), "mm/dd/yyyy")
私はsFilterのための上限および下限としてtFilterとRFILTERを使用することを意図したが、これはどちらか動作しませんでした。私はDateAddメソッドを使用しようとしましたが、MSDNサイトで機能情報を調べたところ、yesterdays items.Iは返されませんでしたが、この質問には解決策がありましたが、それは役に立たなかった(Outlook .Restrict does not work with Date)。
日付(-1)のメソッドが日付と連動して動作しない理由がわかりません。論理演算子は、MSDNのサイトによればうまく動作するはずです。この問題を理解する上での助けに感謝します。前もって感謝します!
注:引用した下の3つの例は、エラーを返して適切にコンパイルしません。しかし、彼らは意図したようにフィルタリングしません。
ありがとうございました!フィルタリングは機能していますが、フィルタに時間を含める方法はありますか?あなたが提供したコードは今日からいくつかのアイテムを返すようです。これは、<今日@現在の時間を返すことを意味しますか?私は上記と同じように時間を追加しようとしましたが、見通しはそれを好まないようです。 – mmoschet
また、ReceivedTime =&Date - 1はアイテムを返しません。私はこれが現在の時間が使用されていることによると推測しています。郵便物の財産に送られた場合、この問題は回避されますか? (https://msdn.microsoft.com/en-us/library/office/aa172005(v=office.11).aspx) – mmoschet
最初の考えよりも少し複雑に思えます。フィルタに日付書式を追加しました。私は以前より少し良くテストしたと思う。 – niton