スレッド連結用マクロNo.00505
エイト さん 04/01/07 00:41
 
いつもお世話になっております。

ある受信フォルダに振り分けられたメール群をスレッド形式で見ています。
メールが自動的に他のメールの後ろに紐づくのは結構ですが、自分で
他のメールの後ろに紐づかせたい時もあります。
現在では対象メールを左クリックで掴んで、そのまま対象メール先まで
マウスで移動しています。
しかしメール数がフォルダ内に千を超えた辺りからこれらの作業が
辛くなってきました。
対象メールを掴みながらカーソルでUp/Down/PageDown/PageUp等を
使用すると掴んだメール以外のメールが紐づかれてしまいます。
現在は紐付けたいメールのMess-IDを調べておいて
"In-Reply-To: <Mess-ID> (TuruKame supplied)"と自分で
編集したり、上記同様左クリックで掴んで処理しています。

できれば同処理をマクロで実現したいのですが、マクロライブラリには
それらしきライブラリが無いように思われ、投稿いたしました。
希望は、全てキーボード上の処理だけで連結処理ができる事です。

もしマクロで実現可能なものであれば、どなたか、どうか提供していただきたく
宜しくお願いいたします。

[ ]
RE:00505 スレッド連結用マクロNo.00507
山紫水明 さん 04/01/07 17:41
 
 エイトさん,こんにちは。

》できれば同処理をマクロで実現したいのですが、マクロライブラリには
》それらしきライブラリが無いように思われ、投稿いたしました。
》希望は、全てキーボード上の処理だけで連結処理ができる事です。

 とりあえず以下のようなマクロではいかがでしょうか。メールを選ぶ順序が逆
にできればもっと使いやすいとは思いますが,少し面倒そうです。
 多分いろいろ不具合が出てくるかもしれませんが。

//---- ConnectMail.mac -------------------------------------//
//まず連結先のメールで実行,次いで連結するメールを選んで実行
loaddll "TKinfo.dll";
if( !dllfunc("IsThreadView") ) #n = dllfunc("SetThreadView", 1);
beginclipboardread;
$c = getclipboard;
if( leftstr($c,12) == "In-Reply-To:" ) {
    question "このメールを連結しますか?";
    if( result == yes ) {
        #n = dllfunc("BeginEditMail");
        #n = dllfunc("SetHeader","In-Reply-To", $c);
        #n = dllfunc("SetMailFlag", "altered", 1);
        #n = dllfunc("SaveEditMail", 1, 0 );
    }
    setclipboard "";
    endmacro;
}
question "このメールに連結しますか?";
if( !result ) endmacro;
$mi = dllfuncstr( "CurrentHeader", "Message-Id" );
$re = "In-Reply-To: " + $mi + " (TuruKame supplied)";
setclipboard $re;
message "連結するメールを選んでこのマクロを再実行してください。";
endmacro;
//-------------------------------------------------------//

     では, (^^)/~
                                        山紫水明

[ ]
RE:00507 スレッド連結用マクロNo.00508
エイト さん 04/01/07 18:20
 
山紫水明さん、ありがとうございます。
後は自分なりに改造してみます。


ありがとうございました!

[ ]