検索して一覧作成、の結果No.06072
styth さん 19/12/26 08:46
 
検索して一覧作成、を実行した後の結果を、テキストファイルに書き込みたいのです
が、できますか?


[ ]
RE:06072 検索して一覧作成、の結果No.06074
秀まるお2 さん 19/12/26 10:57
 
 一応、マクロを使えばなんとか出来ると思います。

 検索結果のうち、何をテキストファイルに保存するのか、その辺の仕様がはっきり
しないとなんとも言えないですが、例えばメールの件名(Subject:ヘッダ内容)と差
出人(From:)の内容をタブ区切り(TSV形式)で出力するマクロの例だと、以下のよ
うになります。

------------------検索結果の一覧をテキストファイルに保存するマクロ例--------
    loaddll "tkinfo.dll";
    #n = dllfunc("SetJapaneseCodePageMode");
    if( dllfunc("IsHidemaruMailGrep") == 0 ) {
        message "このマクロは検索結果の一覧上でのみ実行できます。";
        endmacro;
    }
    #count = dllfunc("MailCount");
    if( #count == 0 ) {
        message "メールが1通もありません。";
        endmacro;
    }
    #n = dllfunc("NewMail");
    #n = dllfunc("SwitchHeaderView", 0);
    gofiletop;
    beginsel;
    gofileend;
    delete;
    #editor = hidemaruhandle(0);
    #n = dllfunc("SetGrepWndTop");
    #i = 0;
    $total = "";
    #count2 = 0;
    while( #i < #count ) {
        #n = dllfunc("SetMailIndex", #i);
        $subject = dllfuncstr("CurrentHeader", "Subject");
        $from = dllfuncstr("CurrentHeader", "From");
        $total = $total + $subject + "\t" + $from + "\n";
        #i = #i + 1;
        #count2 = #count2 + 1;
        if( #count2 > 100 ) {
            //文字列変数の長さが長すぎるとダメ
            setactivehidemaru #editor;
            insert $total;
            $total = "";
            #count2 = 0;
            #n = dllfunc("SetGrepWndTop");
        }
    }
    setactivehidemaru #editor;
    insert $total;
    SAVEAS;


[ ]
RE:06074 検索して一覧作成、の結果No.06081
styth さん 19/12/28 16:40
 
  $date = dllfuncstr("FormatDate", dllfuncstr("CurrentHeader", "Date"), "YYY
Y/MM/DD");
  //$subject = dllfuncstr("CurrentHeader", "Subject");
  //$from = dllfuncstr("CurrentHeader", "From");
  $total = $total + $date + "\n"; //$subject + "\t" + $from + "\n";

 上記のようにしました。
 送受信日が知りたいのですが、どう直せば良いですか?


[ ]
RE:06081 検索して一覧作成、の結果No.06082
秀まるお2 さん 19/12/28 18:47
 
    $date = dllfuncstr("CurrentTransmitDate", "YYYY/MM/DD");

 のようにすればいいです。

[ ]