宛名の後に「様」を付加したいのですが。No.10288
haru2 さん 06/05/10 14:55
 
 宛名の後に「様」を付加したいのですが。
 マクロで、toだけなら良いんですが、考えてみたら、cc、bccに
も、それを付けたいです。
 マクロでやりたいのですが、お知恵を拝借致したく、よろしくお
願いします。
 
From:     あああ <xxx@xxx.ne.jp>
To:       いいい <xxx@yyy.co.jp>
Cc:       ううう<xxx@zzz.co.jp>
Bcc:      <xxx@www.co.jp>

 これが、

From:     あああ <xxx@xxx.ne.jp>
To:       いいい 様 <xxx@yyy.co.jp>
Cc:       ううう 様 <xxx@zzz.co.jp>
Bcc:      <xxx@www.co.jp>

 となれば良いんですが。

 また、例えば、Toで「いいい」がなければ、様は付けたくありま
せん。(上記例では、Bcc)
 よろしくお願いします。

[ ]
RE:10288 宛名の後に「様」を付加したいのNo.10289
秀まるお さん 06/05/10 16:34
 
 テンプレートの命令で、「様」を付ける用のAddSama命令が用意されています。
それを使うのがいいと思います。

  $(SetHeader,To,$(AddSama,$(CurrentHeader,To)))$-
  $(SetHeader,Cc,$(AddSama,$(CurrentHeader,Cc)))$-

 って命令をテンプレートに入れればいいかと思います。

 または、マクロでやるとしたら、

    loaddll "tkinfo.dll";
    #n = dllfunc("SetHeader","To"
            ,dllfuncstr("AddSama",dllfuncstr("CurrentHeader","To")));
    $cc = dllfuncstr("CurrentHeader", "Cc");
    if( $cc != "" ) {
        #n = dllfunc("SetHeader","Cc"
                ,dllfuncstr("AddSama",$cc));
    }

 でいいと思います。

[ ]
RE:10289 宛名の後に「様」を付加したいのNo.10293
haru2 さん 06/05/11 08:41
 
>    loaddll "tkinfo.dll";
>    #n = dllfunc("SetHeader","To"
>            ,dllfuncstr("AddSama",dllfuncstr("CurrentHeader","To")));
>    $cc = dllfuncstr("CurrentHeader", "Cc");
>    if( $cc != "" ) {
>        #n = dllfunc("SetHeader","Cc"
>                ,dllfuncstr("AddSama",$cc));
>    }
> でいいと思います。
 ありがとうございます。うまくいきました。
 ただ、
 「"斉藤秀夫 <xxx@bbb.ccc>"のような文字列をパラメータで受け
取ると、"斉藤秀夫様 <xxx@bbb.ccc>"のような文字列を返します。」
 とのことなんですが、"斉藤秀夫 様 <xxx@bbb.ccc>"の様に、様
の前にスペースが入るパラメータがあれば、もっと良いような気が
します。
 如何でしょうか?
 今は、別のマクロでそうしています。
 御検討下さい。よろしくお願いします。

[ ]
RE:10293 宛名の後に「様」を付加したいのNo.10294
秀まるお さん 06/05/11 09:20
 
 では、AddSama関数に第2パラメータとして付加する文字列を指定できるよう
にします。

    $s = dllfuncstr("AddSama", "斉藤秀夫 <xxx@bbb.ccc>", " 様");

 みたいに指定できるようにします。

[ ]
RE:10294 宛名の後に「様」を付加したいのNo.10295
haru2 さん 06/05/11 09:43
 
> では、AddSama関数に第2パラメータとして付加する文字列を指定できるよう
>にします。
>    $s = dllfuncstr("AddSama", "斉藤秀夫 <xxx@bbb.ccc>", " 様");
> みたいに指定できるようにします。
 ありがとうございます。
 上のような形であれば、殿とか御中も使えそうです。
 よろしくお願いします。

[ ]
RE:10294 宛名の後に「様」を付加したいのNo.10296
秀まるお さん 06/05/11 09:45
 
 っとやってはみましたが、そもそも別のマクロでうまく処理されてるのならそ
のままそのマクロでやっていただく方がいいと思います。

[ ]
RE:10294 宛名の後に「様」を付加したいのNo.10297
haru2 さん 06/05/11 10:29
 
 β23で確認しました。ありがとうございます。
 わざとやってみたわけではないのですが、たまたま
   
    #n = dllfunc("SetHeader","To"
            ,dllfuncstr("AddSama",dllfuncstr("CurrentHeader","To")," 様"));

 を実行したところ、

 斉藤秀夫様 <xxx@bbb.ccc>
   ↓
 斉藤秀夫様 様 <xxx@bbb.ccc>

 になってしまいました。

 自分で気を付ければ良いんですが、もし良ければこうならないよ
うに対処して頂けるとありがたいです。
 よろしくお願いします。

[ ]
RE:10296 宛名の後に「様」を付加したいのNo.10298
haru2 さん 06/05/11 10:32
 
> っとやってはみましたが、そもそも別のマクロでうまく処理されてるのならそ
>のままそのマクロでやっていただく方がいいと思います。
 そのマクロは自作のものなので、あまりスッキリしたものではあ
りせん。
 できれば、addsamaの方を使わせて頂きたいのですが。

[ ]
RE:10297 宛名の後に「様」を付加したいのNo.10299
秀まるお さん 06/05/11 11:22
 
>  自分で気を付ければ良いんですが、もし良ければこうならないよ
> うに対処して頂けるとありがたいです。

 それの対処が出来ないので、マクロでやった方がいいという話になった訳です
が…。

 そういう、人それぞれの細かいことに対処できるのがマクロの強みなので、だ
からマクロを使ってくださいという話です。

[ ]
RE:10299 宛名の後に「様」を付加したいのNo.10300
haru2 さん 06/05/11 11:55
 
> そういう、人それぞれの細かいことに対処できるのがマクロの強みなので、だ
>からマクロを使ってくださいという話です。
 了解しました。
 自力で対処します。
 ありがとうございます。

[ ]