トップ «前の日記(2015-07-17(Fri)) 最新 次の日記(2015-07-23(Thu))» 編集

K2さんの雑記


2015-07-21(Tue) [長年日記]

Outlookで指定したMessage-IDのメールを検索して表示するマクロ(2)

ちょっとだけ進んだ。

Public Sub SearchEmailTPZ()
   Dim oMailItem, oCurrentSelectedItem As MailItem
   Dim oFolder As Folder
   Dim sFilter, sMessageID As String
   Dim objSel
   '以下の""内に、該当メールのMessage-IDを書く
   sMessageID = "<1111111111111111@xxx.xxx.xxx>"
   Set oMailItem = SearchEmailByMessageID(sMessageID)
   If Not oMailItem Is Nothing Then
       Set oFolder = oMailItem.Parent
       Set ActiveExplorer.CurrentFolder = oFolder

       ' 以下のコードは不安定だが一応動作するようだ
       ' ただし、(1)フォルダがスレッド状態でないこと
       ' (2)2度同じマクロを実行する必要がある
       ' (3) 選択されたアイテムは、リストビュー上で表示
       ' される位置までスクロールはされていない
       Set objSel = ActiveExplorer.Selection(1)
       ActiveExplorer.RemoveFromSelection objSel
       ActiveExplorer.AddToSelection oMailItem
   End If
End Sub

まず、選択動作等は、フォルダの表示形式をスレッドにしているとうまくいかないようだ。

また、フォルダを表示してからすぐにコードを実行するとうまく動かないようだ。上記のコードは2回動作させてやっと選択される。

選択されたメールは、リストビュー上で見える位置までスクロールされない。

以上のように、まだまだ問題点を抱えている。

メール選択の代わりに、フィルターを使用する方法も試してみた。これも、上記のように2回実行する必要があるが、スレッド表示状態でも動作する。なお、動かした後はフィルタを解除しないと正常動作に戻らないので注意。

また、試行中にビュー設定がおかしくなる場合があるので、それについても要注意。その場合は、別のフォルダのビュー設定をコピーしてくれば元に戻る。

       sFilter = _
           """http://schemas.microsoft.com/mapi/proptag/0x1035001E"" = " _
           & " '" & sMessageID & "'"
       ActiveExplorer.CurrentView.filter = sFilter
       ActiveExplorer.CurrentView.Save
       ActiveExplorer.CurrentView.Apply

1965|09|
2002|09|10|11|12|
2003|01|02|04|05|06|07|08|09|10|11|12|
2004|01|02|03|04|05|06|07|08|09|10|11|12|
2005|01|02|03|04|05|06|07|08|09|10|11|12|
2006|01|02|03|04|05|06|07|08|09|10|11|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|01|02|03|04|05|06|07|08|09|10|11|12|
2009|01|02|03|04|05|06|07|08|09|10|11|12|
2010|01|02|03|04|05|07|08|09|10|11|12|
2011|01|02|03|04|05|06|07|08|09|10|11|12|
2012|01|03|04|05|08|
2014|01|02|03|04|05|08|09|10|11|12|
2015|01|02|03|04|05|06|07|08|09|10|11|12|
2016|01|02|03|04|05|06|07|08|09|11|
2017|01|03|05|06|07|08|10|11|12|
2018|01|02|03|04|05|08|




2015年
7月
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
//
自己紹介
自己紹介
広告
計るだけダイエット
今聴いてるの
ブルックナー:交響曲第7番 ブルックナー:交響曲第7番
ブルックナー:交響曲第8番 ブルックナー:交響曲第8番
読書中
つっこみリスト
TrackBacks
日記仲間
/ / /
最近の日記