質問: outlook2010の表示上の受信日時について outlook2010にて特定のフォルダにあるメールの一覧(excelシート)を出力するマクロを作成していたところ、表示上の時刻が正確でないことに気が付きました。 outlook2010では受信時刻に秒単位の値が表示されておらず、分までの表示となっているのですが、どうやら30秒前後で切り上げになっているようです。(例えば、10:12:40に受信したメールは10:13扱い) それ自体はそういう仕様であるものとして扱えばよいのですが、問題は、この切り上げ単位が不明瞭で、30秒に受信したメールが切り上げになっているものとなっていないものがあることです。 ■実例(マクロで取得したreceivedtime ⇒ 表示上の受信日時) 2011/7/20 10:34:30 ⇒ 2011/7/20 10:34 (切り捨て) 2011/7/21 1:01:30 ⇒ 2011/7/21 1:01 (切り捨て) 2011/8/1 1:06:30 ⇒ 2011/8/1 1:07 (切り上げ) なお、私が確認した限りでは、29秒以下は一貫して切り捨てされ、31秒以上は一貫して切り上げされているように思われます。(あくまでも確認した限りなので、誤りかもしれません) しかし、30秒の時だけは、上記のとおり切り上げられたり切り捨てられたりしています。 pcの内部処理のことなので、気まぐれなわけではなく何らかのルールによって処理されているものと思うのですが、私の調査能力/思考能力ではその仕組みがわかりませんでした。どなたかこの辺りの仕組みについてご教授ください。 なお、最終的な目的としては、「表示上の受信日時」をマクロで取得することにありますので、上記のメカニズムがわからなくとも、これを実現する方法がお分かりの方がいらっしゃいましたらご教授いただければ幸いです。 以上、何卒よろしくお願いします。
回答: [no.1お礼]へのコメント、 》 microsoft製品同士で異なるということは特に深い考えはないんでしょうか この件ですが、私の経験上「深い考えはない」と断言します。 msには "product consistency"(製品の首尾一貫性) の考えはあまりないと思うので。 なお、「microsoft製品」のことなら、[microsoft answers]で質問してみることをお勧めします。http://answers.microsoft.com/ja-jp/office ここでは、msからの回答が得られます。「それは仕様です」の回答しかない場合が多いですが。