要望についてNo.08612
na311 さん 21/09/16 21:55
 
お世話になります。

可能ならなのですが下記のように対応出来ないでしょうか。

@メール一覧の上部にある「範囲(L):」の欄を
 「メールアドレス検索」にしています。
 メールアドレス検索で登録名についてAND検索出来るようにすることは可能でしょ
うか。(アドレスでなく登録名)
 例えば「○○会社 △△様」を「○○ △△」と入力して候補を出したいです。

A上記の「メールアドレス検索」を行って候補を絞ってから、
 プルダウンで「絞り込み検索」をすることが多いですが
 「メールアドレス検索」を行って、そのまますぐに「絞り込み検索」を
 行う方法は無いでしょうか。(検索窓をオプションで2つ用意など)

B添付ファイル付きのメールにパスワードを掛けてある会社が多いですが
 パスワードが載った自動送信メールをスレッド表示で繋げることは出来ないでしょ
うか。
 スレッドからダブルクリックでそのメールに飛んだりして
 パスワードを探しているのですが出来ればスレッドでパスワードを
 確認出来ればと思っております。

お忙しい中、すみませんが確認いただけると幸いです。


[ ]
RE:08612 要望についてNo.08613
秀まるお2 さん 21/09/17 11:09
 
>  メールアドレス検索で登録名についてAND検索出来るようにすることは可能でしょ
> うか。(アドレスでなく登録名)

 メールアドレス検索は、メールアドレスを対象として検索しか出来ないです。なの
で、普通の検索で、「対象(X):」を工夫して使ってほしいです。

 遅くなるのは仕方が無いです。

>  例えば「○○会社 △△様」を「○○ △△」と入力して候補を出したいです。

 ライブラリにアップロードしていただいてるマクロで、以下の物がありまして、こ
れを使うと、検索文字列を空白区切りで複数指定できるようにてす。

    https://hide.maruo.co.jp/lib/tkmacro/hidemarumailsearch103.html

 絞り込み検索で複数文字列指定するってことになると、上記マクロも含めて秀丸
メールのVersion 7.00以下では手段がありませんでした。しかし、最新βの方で、絞
り込み検索欄の方でも独自の検索条件式を指定できるようにしています。それを使う
と空白区切りでの複数指定が可能になります。

 試しにマクロを作ってみたので、最新βをインストールして試してみてほしいです。


> A上記の「メールアドレス検索」を行って候補を絞ってから、
>  プルダウンで「絞り込み検索」をすることが多いですが
>  「メールアドレス検索」を行って、そのまますぐに「絞り込み検索」を
>  行う方法は無いでしょうか。(検索窓をオプションで2つ用意など)

 サンプルマクロの方でこれも実現できるようにしてみました。

 サンプルマクロを実行して1回絞り込み検索を実行し、その後もう一度マクロ実行
すると、追加の条件指定が出来るようになります。

> B添付ファイル付きのメールにパスワードを掛けてある会社が多いですが
>  パスワードが載った自動送信メールをスレッド表示で繋げることは出来ないでしょ
> うか。

 秀丸メールが自動でつなげるのは無理があると思います。パスワードのメールの形
式がいろいろあるようなので、それら全部対応するのは無理があると思います。ご自
身でスレッドの連結をしてもらうしか無いと思います。

 ご自身でスレッドの連結をするとしたら、メール一覧をスレッド表示にしてからパ
スワードメールをドラッグして添付ファイル付きメールの方にドロップするだけです。
それでつながります。

 ちなみにパスワード別便メールの解凍をするマクロもあります。

    https://hide.maruo.co.jp/lib/tkmacro/passwordzipextract18.html

----------------------------------------------------------------------------
 以下、複数文字列を空白区切りで指定して絞り込み検索するサンプルマクロです。
最新β(V7.10β4)以上でないとうまく動作しません。
----------------------------------------------------------------------------

    loaddll "tkinfo.dll";
    #n = dllfunc("SetJapaneseCodePageMode", 1);

    if( dllfunc("ViewArea") == 6 ) {
        $s = dllfuncstr("ViewAreaFinder");
        if( leftstr( $s, 1 ) == "\x1B" ) {
            //検索条件式から文字列取得
            $pack = midstr( $s, 1);
            #i = 0;
            #len = wcslen($pack);
            #instr = 0;
            $s = "";
            while( #i < #len ) {
                $c = wcsmidstr( $pack, #i, 1 );
                if( $c == "\"" ) {
                    #instr = 1 - #instr;
                    if( #instr == 0 ) {
                        if( $s != "" ) {
                            $s = $s + " ";
                        }
                    }
                } else {
                    if( #instr ) {
                        if( $c == "\\" ) {
                            #i = #i + 1;
                            $c = wcsmidstr( $pack, #i, 1 );
                        }
                        $s = $s + $c;
                    }
                }
                #i = #i + 1;
            }
        }
    }

    $s = input( "絞り込み検索文字列(空白区切りで複数指定可)", $s );
    if( $s == "" ) {
        endmacro;
    }

    //末端の空白を除去
    while(1) {
        if( rightstr( $s, 1 ) == " " ) {
            $s = leftstr( $s, strlen($s) - 1 );
        } else if( rightstr( $s, 2 ) == " " ) {
            $s = leftstr( $s, strlen($s) - 2 );
        } else {
            break;
        }
    }

    #split = 0;
    while(1) {
        //先頭の空白を除去
        while(1) {
            if( leftstr( $s, 1 ) == " " ) {
                $s = midstr( $s, 1 );
            } else if( leftstr( $s, 2 ) == " " ) {
                $s = midstr( $s, 2 );
            } else {
                break;
            }
        }
        if( $s == "" ) {
            break;
        }
        #x1 = strstr( $s, " " );
        #x2 = strstr( $s, " " );
        if( #x1 < 0 || (#x2 >= 0 && #x2 < #x1) ) {
            #x1 = #x2;
        }
        if( #x1 >= 0 ) {
            $find[#split] = leftstr( $s, #x1 );
            $s = midstr( $s, #x1 );
            #split = #split + 1;
        } else {
            $find[#split] = $s;
            #split = #split + 1;
            break;
        }
    }
    if( #split == 0 ) {
        message "検索文字列が不明です。";
        endmacro;
    }
    if( #split > 4 ) {
        message "検索文字列の数が多すぎます。超えた分は無視されます。";
        #split = 4;
    }
    $pack = "";
    #i = 0;
    while( #i < #split ) {
        if( #i != 0 ) {
            $pack = $pack + "and";
        }
        $pack = $pack + "(\"" + dllfuncstr("YenEncode", $find[#i] ) + "\", t
arget=smallheaderbody)";
        #i = #i + 1;
    }
    $pack = "\x1B" + $pack;     //絞り込み検索用。
    #n = dllfunc("SetViewArea", 6, $pack);


[ ]
RE:08613 要望についてNo.08622
na311 さん 21/09/18 13:05
 
早速ありがとうございます。

「複数文字列を空白区切りで指定して絞り込み検索するサンプルマクロ」
使ってみたのですが非常に便利でした。

今までは複数文字列で検索出来なかったので
絞り込み検索でなく、アカウント全体でAND検索をしていて検索時間が掛かっていて、
探しているメールが見つけづらかったのですが
教えてもらったマクロは選んでいるフォルダ内から検索できるので
検索時間も早く、探しているメールを見つけやすくなりました。

また、パスワードメールの件は承知しました。
ご確認ありがとうございます。

パスワード別便メールの解凍をするマクロは便利に使わせてもらっています。


[ ]