アドレスの名前の切り替えをしたいのですがNo.07238
ももかず さん 02/05/22 15:34
 
こんにちは。ももかずといいます。

宛先の名前部分を国内と海外で切り替えたいのですが何かよい方法はない
でしょうか?

例えば、AAAさんは日本人、BBBさん、CCCさんはアメリカ人だった場合、
 <国内>
  To:AAAさま<xxx@hoge.co.jp>
  Cc:BBBさま<xxx@hoge.co.jp>
 <海外>
  To:Mr.CCC<xxx@hoge2.co.jp>
  Cc:Mr.AAA<xxx@hoge.co.jp>
のように、AAAさんの名前部分を国内用と海外用で切り替えたいのです。

現在のアドレス帖では、名前は1つしか登録できませんので、備考欄を使用
してマクロを使ったら・・・とも思ったのですが、マクロヘルプを見る限り
備考欄の取得もできそうにありません。

フォーラムを検索してみましたが、探し方が悪いのか、それらしい文書も
発見できませんでした。

どなたかお知恵を貸していただけないでしょうか?

[ ]
RE:07238 アドレスの名前の切り替えをしたいのですがNo.07240
秀まるお2 さん 02/05/22 16:12
 
>宛先の名前部分を国内と海外で切り替えたいのですが何かよい方法はない
>でしょうか?

 「後で送信/今すぐ送信時」用のマクロでTo:/Cc/Bcc:欄を操作するのが適当だと
思います。

 「さま」を付けたり「Mr.」を付けるのは簡単に出来ますが、問題は「このメール
が海外用か国内用かをどうやって判定するか」だと思います。

 To:欄の一番先頭のアドレスが誰かによって判定していいのなら、例えばその人が
アドレス帳に「Mr.AAA」として登録されてたら外国人、「AAA」とだけ登録されてい
たら日本人と見なすようにマクロを作るとか、そういう作戦は可能です。

-----------
 個人的にはこのような敬称をわざわざ付ける必要は無いし、そんなこといちいち気
にするのはインターネットらしからぬ習慣だと思います。上司だろうが部下だろうが
敬称は一切省略するのが普通だと思います。

[ ]
RE:07238 アドレスの名前の切り替えをしたいのですがNo.07266
アルビレオ さん 02/05/23 03:53
 
アルビレオです。

>宛先の名前部分を国内と海外で切り替えたいのですが何かよい方法はない
>でしょうか?

アドレス帳に同じアドレスを複数登録すればいいかと思います。

例------
名前:AAAさま
メールアドレス:xxx@hoge.co.jp
備考:国内用
--------
名前:Mr.AAA
メールアドレス:xxx@hoge.co.jp
備考:海外用
--------

返信メールなどの場合はいちいちアドレス帳で選択しなおす必要がありますが、そう
いう場合には宛名が一貫していた方が都合がいいのではないでしょうか。

私の場合は同じメールアドレスで仕事用(本名)と私用(ハンドル名)で別アカウン
トを作ることで、相手によって自分の名前を変えたりしています。

[ ]
RE:07266 アドレスの名前の切り替えをしたいのですがNo.07267
アルビレオ さん 02/05/23 04:02
 
追記です。

>私の場合は同じメールアドレスで仕事用(本名)と私用(ハンドル名)で
>別アカウントを作ることで、相手によって自分の名前を変えたりしています。

これを行なう場合、振り分け設定でFrom:の内容によっては受信しないようにしない
とかなり混乱します。

仕事用------
From:がxxxxxx@hoge.ne.jpを含む → 受信しない
私用--------
From:がxxxxxx@hoge.ne.jpを含まない → 受信しない
------------

てな感じです。

[ ]
RE:07240 アドレスの名前の切り替えをしたいのですがNo.07277
ももかず さん 02/05/23 12:35
 
こんにちは。ももかずです。

秀まるお2さん、アルビレオさん、早速のレス、ありがとうございます。

確かにアルビレオさんのおっしゃるとおり、アドレス帳に2つ登録すれば
よいとは思っていますが、同じ人を2箇所に登録するわけですから、もし
アドレスが変更されたりすると片方修正し忘れたり・・・という問題が
発生する可能性もあり、できれば避けたいと思ったのです。

>問題は「このメールが海外用か国内用かをどうやって判定するか」だと
>思います。

これは手動で判断すればよいので、アドレス指定の時に選択ダイアログ
でも出せば・・・と思っています。

>個人的にはこのような敬称をわざわざ付ける必要は無いし・・・

敬称というよりは名前そのものを変更したいのです。
日本人は日本語、外国人は英語で名前を書きたいのです。
要するに、日本語OSでメールを受け取る人には日本語で書き、英語OSで
メール受け取る人には英語で書きたいのです。

[ ]
RE:07277 アドレスの名前の切り替えをしたいのですがNo.07278
江袋 さん 02/05/23 12:58
 
ももかずさん、こんにちは。江袋と申します。

>日本人は日本語、外国人は英語で名前を書きたいのです。
>要するに、日本語OSでメールを受け取る人には日本語で書き、英語OSで
>メール受け取る人には英語で書きたいのです。

私、上記のこと実際にやっています。

やり方は、ちょっと複雑かもしれませんが、一応紹介したいと思います
ので、試してみてはいかがでしょう。

【動作概要】

 英文メールの場合、ToやCcには F.Ebukuroのように英文の名前を記述
し、日本語メールの場合は江袋 文人と記述する

【準備】

 まず最初に、アドレス帳には次のようなルールで名前を記述します。

江袋 文人/F.Ebukuro

※半角スラッシュが区切り文字。前半が日本語名で後半が英語名。

【送信用のエディタ起動時の自動実行マクロ】

 メールを新規や返信で送信する際、マクロを自動起動するようにして
おき、マクロには次のような記述を入れておきます。

loaddll "TKInfo.dll";
if (!result) {
message "tkinfo.dllのロードに失敗しました。";
endmacro;
}
#type = dllfunc("MailType");
//中略
call EnglishMail #type;

endmacro;

//==========================================================================
====
//英文メール対応
//==========================================================================
====

EnglishMail:
menu "英文メール";// 英文メールの場合にマウスで選択
if (result == 0) {
gofiletop;
return;
}
// Fromアドレスの書き換え
$$s = dllfuncstr("SetHeader", "From", "EBUKURO Fumihito <xxx@xx.xxxxxxxx.com
>");
//以下略(実際はシグニチャを英文に書き換えたりしています)
return;

【後で送信/今すぐ送信時の自動実行マクロ】

 そして、メールを発信する際に下記のマクロを実行してToなどを書き
換えます。

loaddll "TKInfo.dll";
if (!result) {
message "tkinfo.dllのロードに失敗しました。";
endmacro;
}
#type = dllfunc("MailType");


//==========================================================================
====
//Fromアドレスの確認
//- "EBUKURO Fumihito" ........ 英文メールと判断→ヘッダー加工処理
//- その他 .................... 終了処理
//==========================================================================
====

$FromName = dllfuncstr("SetNameOnly", dllfuncstr("CurrentHeader", "From"));
if ($FromName != "EBUKURO Fumihito") {
endmacro;
}

//==========================================================================
====
//ヘッダー加工処理
//(To/Cc/Bccをアドレスのみに変換)
//==========================================================================
====

call HeaderChanger "To", "";
call HeaderChanger "Cc", "";
call HeaderChanger "Bcc", "";
call HeaderChanger "Organization", "XXXXXXXX Limited";

endmacro;

HeaderChanger:
$newHeader = $$2;
if ($$1 == "To" || $$1 == "Cc" || $$1 == "Bcc") {
$h = dllfuncstr("CurrentHeader", $$1);// ヘッダー
#n = dllfunc("CountEmailList", $h);// ヘッダーの中身の要素数
#i = 0;
while (#i < #n) {
$s1 = dllfuncstr("GetEmailList", $h, #i);
$s2 = dllfuncstr("FindBook", $s1);
$s3 = "";
$s4 = "";
// アドレス帳に存在したら
if ($s2 != "") {
// アドレス帳に記載されている"名前 <メアド>"抽出
$s3 = dllfuncstr("FindBook3", $s1);
// スラッシュの位置を検索
#n1 = strstr($s3, "/");
// スラッシュが見つかったら
if (#n1 != -1) {
// メアド含んだスラッシュの右側を抽出
#n1 = #n1 + 1;// スラッシュは除く
$s4 = rightstr($s3, (strlen($s3)-#n1));
}
else {
// アドレス帳のメアドをそのまま使う
$s4 = $s3;
}
}
else {
// アドレス帳のメアドをそのまま使う
$s4 = $s1;
}
$newHeader = $newHeader + $s4;
#i = #i + 1;
if (#i < #n) {
$newHeader = $newHeader + ", ";
}
}
}
else {
#n = 1;
}
if (#n > 0) {
$s = dllfuncstr("SetHeader", $$1, $newHeader);
}
return;

[ ]
RE:07278 アドレスの名前の切り替えをしたいのですがNo.07290
江袋 さん 02/05/23 14:42
 
>やり方は、ちょっと複雑かもしれませんが、一応紹介したいと思います
>ので、試してみてはいかがでしょう。

がーん。

タブ文字が消えて自動改行が入ったためマクロが非常に見づらくなって
しまいました。

必要でしたら、今度はちゃんと表示されるよう再アップしますのでその
ときはおっしゃってください。

[ ]
RE:07290 アドレスの名前の切り替えをしたいのですがNo.07293
ももかず さん 02/05/23 15:30
 
こんにちは。ももかずです。

江袋さん、ありがとうございました。

>タブ文字が消えて自動改行が入ったためマクロが非常に見づらくなって
>しまいました。

とありますが、全然大丈夫です。
無事に解析し終わり、自分なりにカスタマイズしている最中です。

ところで、このマクロなのですが、どのバージョンでも使用できるので
しょうか?

どうも、

 $FromName = dllfuncstr("SetNameOnly", dllfuncstr("CurrentHeader", "From"));
 if ($FromName == "Namae Myouji") {

の部分の判断ができない場合があるようです。
ちなみに、
 上手く動作するもの :鶴亀メール V1.91 秀丸 V3.16β5
 上手く動作しないもの:鶴亀メール V1.80 秀丸 V3.14
です。

[ ]
RE:07293 アドレスの名前の切り替えをしたいのですがNo.07294
江袋 さん 02/05/23 15:50
 
ももかずさん、うまく読んで頂けて何よりです。

>ところで、このマクロなのですが、どのバージョンでも使用できるので
>しょうか?

このマクロは今年の2月に作りました。そのとき(鶴亀のバージョンは
1.61くらい)から

> $FromName = dllfuncstr("SetNameOnly", dllfuncstr("CurrentHeader", "From"));

は正常に動いて正しいFrom内容を取り出せています。
(ちなみに、常に最新の鶴亀+秀丸の組み合わせで使っています)

ですので、少なくとも私の環境では V1.61以降ならどのバージョンでも
動作していました。

[ ]
RE:07294 アドレスの名前の切り替えをしたいのですがNo.07321
ももかず さん 02/05/24 09:58
 
江袋さん、こんにちは。ももかずです。

>ですので、少なくとも私の環境では V1.61以降ならどのバージョンでも
>動作していました。

現在まわりで4人ほど鶴亀メールを使用していますので、全員のマシンで
確認したところ、上手く動作しなかったのは1人だけでした。
私を含め最新に近いバージョンを使用している人は何ら問題なく動いて
います。
上手く動作できなかったマシンの人は現在繁忙状態なので確認作業も
できません。(その人がこの機能ほしいって言ってたのに...)

というわけで、調査もお預けになっちゃいました。

ちなみに、頂いたマクロを変更して、日本語メール、英語メールを選択
できるようにして、「宛先/atesaki <xxxxxxx@xxx.xxx>」から、
 英語 :「atesaki <xxxxxxx@xxx.xxx>」
 日本語:「宛先 <xxxxxxx@xxx.xxx>」
となるように使えるようにしました。

江袋さん、どうもありがとうございました。

[ ]