ダイジェストメールの分割No.06837
PPH さん 02/04/30 20:02
 
こんにちは。はじめまして、熊澤と申します。
鶴亀メールを使い始めて2ヶ月ほどです。

早速質問なのですが、以下の様な処理は可能でしょうか?
1通のメールから複数のメールに分割し、あたかも複数受信したように処理
する。

じつは、あるMLで何通かのメールを「まとめて」1通のメールで配信する
サービスを利用しています。1通ずつ受信していればスレッド表示出来て
問題ないのですが、量(メール件数)が多いので「まとめて」受信をしている
状況です。

何か良い方法がありましたらお教えください。

[ ]
RE:06837 ダイジェストメールの分割No.06838
tnobu2 さん 02/04/30 21:09
 
>早速質問なのですが、以下の様な処理は可能でしょうか?
>1通のメールから複数のメールに分割し、あたかも複数受信したように処理
>する。

そのメールを「名前を付けて保存」して、「インポート」をすると可能に
かもしれません。

ただ、その1通のメールにまとめられた複数のメールが、うまく鶴亀が
サポートしている形式でメール毎に切り分けができるようになっていること
が前提です。

もしそうなっていない場合には、秀丸などのテキストエディタで加工して
やる必要があります。

[ ]
RE:06838 ダイジェストメールの分割No.06839
PPH さん 02/05/01 09:06
 
tnobu2さんこんにちは。

>>早速質問なのですが、以下の様な処理は可能でしょうか?
>>1通のメールから複数のメールに分割し、あたかも複数受信したように処理
>>する。
>
>そのメールを「名前を付けて保存」して、「インポート」をすると可能に
>かもしれません。
>
>ただ、その1通のメールにまとめられた複数のメールが、うまく鶴亀が
>サポートしている形式でメール毎に切り分けができるようになっていること
>が前提です。
ヘルプで見た限りでは違っています。メールのセパレータは1行で
仕切り線のようになってます。

>もしそうなっていない場合には、秀丸などのテキストエディタで加工して
>やる必要があります。
加工する事をマクロか何かで自動化は可能でしょうか?
秀丸エディタは長く使用させて頂いておりますが、マクロの方はちょっと…

[ ]
RE:06839 ダイジェストメールの分割No.06840
三月 さん 02/05/01 09:59
 
>ヘルプで見た限りでは違っています。メールのセパレータは1行で
>仕切り線のようになってます。
>
>>もしそうなっていない場合には、秀丸などのテキストエディタで加工して
>>やる必要があります。
>加工する事をマクロか何かで自動化は可能でしょうか?

仕切り線がすべて同じものなら、置換ですむと思いますがいかが?
鶴亀で期待して切る区切りは、実際に複数メールを選択して
エクスポートしてみるとわかるので、それをコピーしておいて
ダイジェストメールの区切りと置き換える。で可能かと。

[ ]
RE:06840 ダイジェストメールの分割No.06842
PPH さん 02/05/01 11:30
 
三月さんこんにちは。

>>加工する事をマクロか何かで自動化は可能でしょうか?
>仕切り線がすべて同じものなら、置換ですむと思いますがいかが?
>鶴亀で期待して切る区切りは、実際に複数メールを選択して
>エクスポートしてみるとわかるので、それをコピーしておいて
>ダイジェストメールの区切りと置き換える。で可能かと。

秀丸で実際にやってみて出来ました。ありがとうございました。
少し手数がかかるので(置換のほかに削除とか)、マクロなどを勉強して
半自動ぐらいに出るよう頑張ってみます。

[ ]
RE:06839 ダイジェストメールの分割No.06843
秀まるお2 さん 02/05/01 11:32
 
 メールの分割保存はマクロを使えば出来ると思いますが、マクロ作成の経験
が無い場合はご自分で作成するのは困難だと思います。

 具体的なメールの中身を教えていただければ、それ用のマクロを作成してあ
げることは出来ると思います。

 もし会議室に書き込むのが気まずい場合は僕にメールで送ってください。

 送り先は、maruo@mitene.or.jp です。

[ ]
RE:06843 ダイジェストメールの分割No.06844
こさく さん 02/05/01 11:59
 
皆様こんにちは、お世話になっております。
こさくと申します。
横から失礼します。
私も同様な悩みがありました。こんな方法は思いつきませんでした。
しかし、私のダイジェストメールは以下の様な形式になっています。
ちなみに『Yahoo!eグループ』です
上記方法では1メール毎にはなりましたがスレッドは出来ませんでした。
これではスレッド化は無理ですよね。(メッセージIDがない)
なにか方法があればご教示下さい。

________________________________________________________________________

Message:1
   Date:Tue, 30 Apr 2002 12:26:22 -0000
   From:だれそれ<メアド>
Subject:Re:ほにゃほや

 本文たくさん
________________________________________________________________________
________________________________________________________________________

Message:2
   Date:Tue, 30 Apr 2002 21:26:35 +0900
   From:A<メアド>
Subject:これこれ

 本文
________________________________________________________________________
________________________________________________________________________
以降繰返し

[ ]
RE:06844 ダイジェストメールの分割No.06845
ひろ さん 02/05/01 12:23
 
 こさくさん今日は、ひろです。
> これではスレッド化は無理ですよね。(メッセージIDがない)
> なにか方法があればご教示下さい。
 これは無理です。
 Message-ID は Date, From から適当に作成できますが、このダイジェスト
で、各々のメールはどのメールが返信元であるかの情報が何もないからです。

[ ]
RE:06845 ダイジェストメールの分割No.06846
こさく さん 02/05/01 13:07
 
ひろさんこんにちは、こさくです。
ありがとうございます
> これは無理です。
ですね。「もしかしたら」なんていう期待だけで書いてしまいました。
マクロで「Subject」によってルートになるメールとその下に
繋がるメールに分けて保存なんて言うのを考えてみます。
(「分割保存」は出来るとのことなので一歩進めて)
これで同じ「Subject」はひとかたまりにはなるかな。なんて
#時間あるかな〜

ではでは

[ ]
RE:06843 ダイジェストメールの分割No.06847
秀まるお2 さん 02/05/01 14:41
 
 一応、以下のマクロで分割できますが、そもそもこの分割されたメールには
スレッドをつなげるための情報が無いのでスレッド表示しても何もつながりま
せん。

 メールのSubject:ヘッダを見てスレッドをつなげることも可能かと思われま
すが、とりあえずそれはまた今度ということにします。

 分割したいメールを選択した状態でマクロ実行してください。

-----------分割マクロ------------------
    loaddll "tkinfo.dll";
    selectall;
    copy;
    $path = dllfuncstr("MailFilePath");
    $transmit = dllfuncstr("CurrentDate", "YYYYMMDDhhmmss");
    $transmit = $transmit + "00";
    #n = dllfunc("NewMail");
    #n = dllfunc("SwitchHeaderView", 0);
    selectall;
    delete;
    paste;
    gofiletop;
    searchdown "--__--__--";
    golinetop;
    beginsel;
    gofiletop;
    delete;
    replaceallfast "--__--__--\n\n", "\x0C! u:0 r:0 f:0 t:"
            + $transmit + "                    \n"
            , regular;
    gofileend;
    searchup "\x0C!";
    golinetop;
    beginsel;
    gofileend;
    delete;
    #nName = 0;
    while(1) {
        $file = $path + "_" + str(#nName) + ".txt";
        if( ! existfile($file) ) {
            break;
        }
        #nName = #nName + 1;
    }
    saveas $file;
    #handle = hidemaruhandle(0);
    #n = dllfunc("SetMainWndTop");
    closehidemaruforced #handle;
    #n = dllfunc("RefreshMailList");

[ ]
RE:06847 ダイジェストメールの分割No.06848
PPH さん 02/05/01 16:05
 
PPHです。

マクロを登録して実行しました。さくっと実行され、それぞれの
メールに分割されました。ありがとうございました。

# スレッドでのつなぎはメールを読みながら手動で行います。

[ ]