Site Map | HOME > Sub Menu > 書式選択クエリー 概要 | マクロ | 補足

書式選択クエリー

■ 概要・動作イメージ・動作条件など

単純に1書式だけでクエリーを実行したい場合に使用するマクロです。クエリーのダイアログで「検索する文字列」の設定を行わずに選択している文字列を書式設定しクエリーを実行します。

◆ 動作イメージ

  1. クエリー条件として使用する部分を選択した状態で、マクロを再生します。
    条件選択
  2. 「履歴から貼り付け」のダイアログが表示されるので、クエリーの書式を選択するとクエリーが実行されます。(本マクロ は SubTmpMacCmd1Mk.mac を使用しTmpMacCmd1.mac の内容を書き換えます。書き換えられた TmpMacCmd1.mac を call することによりクエリーが実行されます。)
    書式選択(履歴から貼り付け)

◆ 動作条件・制限事項

▲Top

■ EdMax マクロサンプル

◆ 書式選択クエリー

// Start of EdMax Macro
CHAR MacroComment[] = "書式選択クエリー\r\nUpdate:2001/10/22"
// #----------------------* Prolog
SaveCurrentQueryCondition( ) ;          //保存:クエリー条件
SaveCurrentFindCondition( ) ;           //保存:検索条件
SaveCurrentAutoFormSwitch( ) ;          //保存:自動整形ON/OFF
OffAutoForm( ) ;                        //OFF:自動整形
SetFocusToEditor( ) ;                   //フォーカス・メッセージ作成画面へ
// #----------------------* 検索条件のsave(チェック用)
ClearClipboard( ) ;                     //クリップボードをクリア
CopyString( ) ;                         //コピー
NewMessageSx( ) ;                       //新規メッセージ(メーラー部)
SelectAllString( ) ;                    //すべてを選択
DeleteString( ) ;                       //Delete
PasteString( ) ;                        //貼り付け
// #----------------------* 選択されていたかチェック
FindString( FALSE , FALSE , FALSE , TRUE , FALSE , FALSE , FALSE , FALSE , FALSE , ".$" ) ;  //文字列の検索(前を検索)
IfStringFound( 1 ) ;                    //条件選択されていた場合はskip
  CloseFileNoConfirmation( ) ;          //保存確認せずに閉じる
IfStringNotFound( 39 ) ;                //条件選択されていない場合はEpilogへskip
  // #----------------------* クリップボード履歴設定&貼り付け
  ClearClipboard( ) ;                   //クリップボードをクリア
  InsertStringEx( 4 , " " ) ;            //挿入:文字列(クリップボードの文頭)
  ClearClipboard( ) ;                   //クリップボードをクリア
  InsertStringEx( 4 , " " ) ;            //挿入:文字列(クリップボードの文頭)
  ClearClipboard( ) ;                   //クリップボードをクリア
  InsertStringEx( 4 , " " ) ;            //挿入:文字列(クリップボードの文頭)
  ClearClipboard( ) ;                   //クリップボードをクリア
  InsertStringEx( 4 , " " ) ;            //挿入:文字列(クリップボードの文頭)
  ClearClipboard( ) ;                   //クリップボードをクリア
  InsertStringEx( 4 , " " ) ;            //挿入:文字列(クリップボードの文頭)
  ClearClipboard( ) ;                   //クリップボードをクリア
  InsertStringEx( 4 , "head:ヘッダ" ) ; //挿入:文字列(クリップボードの文頭)
  ClearClipboard( ) ;                   //クリップボードをクリア
  InsertStringEx( 4 , "body:本文" ) ;   //挿入:文字列(クリップボードの文頭)
  ClearClipboard( ) ;                   //クリップボードをクリア
  InsertStringEx( 4 , "to:宛先" ) ;     //挿入:文字列(クリップボードの文頭)
  ClearClipboard( ) ;                   //クリップボードをクリア
  InsertStringEx( 4 , "from:差出人" ) ; //挿入:文字列(クリップボードの文頭)
  ClearClipboard( ) ;                   //クリップボードをクリア
  InsertStringEx( 4 , "subject:件名" ) ;//挿入:文字列(クリップボードの文頭)
  SelectAllString( ) ;                  //すべてを選択
  DeleteString( ) ;                     //Delete
  PasteByHistoryDialog( ) ;             //履歴から貼り付け
  // #----------------------* 「履歴から貼り付け」のキャンセルチェック
  FindString( FALSE , FALSE , FALSE , FALSE , FALSE , FALSE , FALSE , FALSE , FALSE , ":" ) ;  //文字列の検索(前を検索)
  IfStringFound( 1 ) ;                  //「:」が存在した場合はskip
    CloseFileNoConfirmation( ) ;        //保存確認せずに閉じる
  IfStringNotFound( 12 ) ;              //「:」が存在しない場合はEpilogへskip
    // #----------------------* Query条件のCOPY
    KeyDown( VK_HOME , 2 ) ;            //Ctrl+Homeキー
    KeyDown( VK_RIGHT , 0 ) ;           //→キー
    InsertString( "=" ) ;
    KeyDown( VK_HOME , 1 ) ;            //Shift+Homeキー
    ClearClipboard( ) ;                 //クリップボードをクリア
    CopyString( ) ;                     //コピー
    CloseFileNoConfirmation( ) ;        //保存確認せずに閉じる
    AddCopyString( ) ;                  //追加コピー(検索条件)
    // #----------------------* クエリーマクロの作成及び実行
    InsertStringEx( 4 , "DoQuery( FALSE , FALSE , FALSE , FALSE , FALSE , FALSE , FALSE , 1 , 6 , \"{" ) ; //挿入:文字列(クリップボードの先頭)
    InsertStringEx( 5 , "}\" , \"\" , \"\" , FALSE , FALSE , FALSE , FALSE , FALSE , 100 ) ;" ) ;          //挿入:文字列(クリップボードの最終)
    CallMacro( SubTmpMacCmd1Mk ) ;      //クエリーマクロ(TmpMacCmd1.mac)の作成
    CallMacro( TmpMacCmd1.mac ) ;       //クエリーマクロの実行
// #----------------------* Epilog
RestoreCurrentQueryCondition( ) ;       //復元:クエリー条件
RestoreCurrentFindCondition( ) ;        //復元:検索条件
RestoreAutoFormSwitch( ) ;              //復元:自動整形ON/OFF
// End of EdMax Macro

▲Top

■ 補足説明

サンプルマクロは下図のパラメータ設定になっています。使用形態に応じ、検索する範囲やクエリー結果画面等を修正してください。修正場所は「クエリーマクロの作成及び実行」部のInsertStringExパラメータです。
サンプルの設定

▲Top


Site Map | HOME > Sub Menu > 書式選択クエリー 概要 | マクロ | 補足