MLへの返信時のアドレス削除についてNo.00419
siniti さん 09/03/14 23:06
 
sinitiです。
私は、Bccで自分おアドレスを標準でつけるようにしています。
→(受信者から見た)発信履歴や、MLへの送信時に受信者と同じ様に
受信箱で管理したいため。

自分がメンバで登録されているML(メーリングリスト)がある時に、
他の人から(MLのメンバ以外から)このMLにメールが来た時に、
このメールに対して、私が返信をしたら、ToでこのMLで、Bccで
自分のアドレスとなり、そのままでは、自分に2通の返信メールが
届きます。

 このようなときには、返信画面でbccを自分のアドレスを削除しています。
このような状態の指定したアドレスがToやcc欄にある場合に、マクロで
BccやCc,To欄に削除したいアドレスがある場合にそのアドレスを削除する
マクロありますか?
あるいは簡単にできますか?
それともどれかのマクロを改造すればできますか?


たとえば以下のような仕様です。
対象MLアドレス:xxx@ybb.ne.jp→これら複数を外部パラメタで登録
自分のアドレス:秀丸メールの設定値を使用する。

このようなときに、xxx@ybb.ne.jpがMLだった場合に、このMLに自分が
メンバに入っているときにこのMLにメールf¥が来ると、受信します。
このメールに返信をすると、To欄にxxx@ybb.ne.jpがセットされるが、
マクロを実行するとBccやCcに自分のアドレスが入っていた場合にこれを削除します。

よろしくお願いします。


---以下の内容はコミュニテックス会議室システムにより付加されました。
本文中のメールアドレスは伏せ字に変換されました。伏せ字にしたくない場合
はメールアドレスを""で囲んで書き込んでください。

[ ]
RE:00419 MLへの返信時のアドレス削除につNo.00420
きいろいまふらあ さん 09/03/15 00:39
 
きいろいまふらあと申します。

>このような状態の指定したアドレスがToやcc欄にある場合に、マクロで
>BccやCc,To欄に削除したいアドレスがある場合にそのアドレスを削除する
>マクロありますか?

sinitiさんが書かれたような高級な(笑)仕様になってませんが、私は同じ目的
で以下のようなマクロを自動起動の「送信用のエディタ起動時」に設定して使っ
ています。ちなみにアカウントの設定で、Bcc:を自動的に付けるようにしてます。

まず"To:"に特定の文字列があるか調べます。"To:"が複数ある場合は想定してま
せん(手抜きです)。"Cc:"も調べてません(手抜き)。いずれも比較的簡単な
改造で対応できると思います。

それで、特定の文字列があったときに、Bcc:を削除したり、From:を書き換えた
りするようになってます(「特定の文字列」毎に動作を変えてます)。自分のア
ドレスがあるかどうかを調べたりはしてません。おもむろに削除してます。Bcc:
が複数ある場合も考慮してません(手抜き)。

ほんとは、条件(宛先から検索する「特定の文字列」、削除や書き換えの要否、
From:を書き換える際の内容)は別ファイルに書き出しておくとスマートなんで
しょうけど、面倒なので全部マクロの中に書いちゃってます(手抜き)。だから、
新しいMLに入ったら、マクロを書き換えてます。(^^;

MLによってハンドルネーム(?)を使い分けることは、今のところないので、
From:の書き換えは共通の内容になってますが、ML毎に変えることも比較的簡単
な改造でできるでしょう。

非常に原始的で見るに耐えないマクロですが、ご参考まで。

//------
loaddll "tkinfo.dll";
if( !result ) {
  message "このマクロは鶴亀メールでしか実行できません。" +
          "(またはtkinfo.dllがロードできないエラーです)";
  endmacro;}
if( !dllfunc("IsTuruKame") ) {
  message "このマクロは鶴亀メールでしか実行できません。";
  endmacro;}

$current_to = dllfuncstr("CurrentHeader","To");
#delete_flag = false;
#change_from = false;

if(strstr($current_to,"@maruo.co.jp")>-1){  //コミュニテックス宛
  #delete_flag = true;    //trueならBcc:を削除する
  #change_from = false;}  //trueならFrom:を書き換える

if(strstr($current_to,"xxx@aaaaa.org")>-1){
  #delete_flag = false;
  #change_from = true;}

if(strstr($current_to,"xxx@bbbbb.co.jp")>-1){
  #delete_flag = true;
  #change_from = false;}
 :
 :(必要なだけ繰り返す)
 :

if(#delete_flag){
  #n = dllfunc("DeleteHeader","Bcc");}
if(#change_from){
  #n = dllfunc("SetHeader","From","●●● <xxx@zzz.ne.jp>");}
endmacro;
//------


---以下の内容はコミュニテックス会議室システムにより付加されました。
本文中のメールアドレスは伏せ字に変換されました。伏せ字にしたくない場合
はメールアドレスを""で囲んで書き込んでください。

[ ]