Site Map | HOME > Sub Menu > 発信者(From)変更 概要 | 導入手順 | マクロ

発信者(From)変更

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

誤って違う発信者となってしまったメールを送信フォルダ内で変更するマクロです。変更する発信者を選択できるのでニックネームの切替なども簡単に行えます。

◆ 動作イメージ

  1. 発信者(From)を変更したいメールを、メーラ部で1通選択した状態でマクロを実行します。
    変更前
  2. 「履歴から貼り付け」のダイアログが表示されるので、発信者を選択します。
    発信者選択
  3. 選択した発信者に変更されます。
    変更後

◆ 動作条件・制限事項

▲Top

■ 導入手順

  1. 「クリップボード履歴設定(修正部)」の部分を発信者アドレスに修正します。

    本例は9アドレス用ですがそれ以上の場合は
    ClearClipboard と InsertStringEx はペアとなるように追加してください。
    アドレス数はいくつでもかまいませんが、9個以上になると選択時スクロールが必要となります。

▲Top

■ EdMax マクロサンプル

◆ 発信者(From)変更.mac

// Start of EdMax Macro
CHAR MacroComment[] = "発信者(from)変更\r\n2001/03/02"
// #----------------------* Prolog
SaveCurrentFindCondition( ) ;       //保存:検索条件
SaveCurrentAutoFormSwitch( ) ;      //保存:自動整形ON/OFF
OffAutoForm( ) ;                    //OFF:自動整形
SaveMailEditHeaderEditMode( ) ;     //保存:メール編集+ヘッダ編集
OnHeaderEdit( ) ;                   //ON:メール編集+ヘッダ編集
SetFocusToEditor( ) ;               //フォーカス:メッセージ作成画面へ
SetFocusToView( ) ;                 //フォーカス:ビュー画面へ
// #----------------------* クリップボード履歴設定(修正部)
ClearClipboard( ) ;                 //クリップボードをクリア
InsertStringEx( 4 , " " ) ; //挿入:文字列(クリップボードの文頭)
ClearClipboard( ) ;                 //クリップボードをクリア
InsertStringEx( 4 , " " ) ; //挿入:文字列(クリップボードの文頭)
ClearClipboard( ) ;                 //クリップボードをクリア
InsertStringEx( 4 , " " ) ; //挿入:文字列(クリップボードの文頭)
ClearClipboard( ) ;                 //クリップボードをクリア
InsertStringEx( 4 , " " ) ; //挿入:文字列(クリップボードの文頭)
ClearClipboard( ) ;                 //クリップボードをクリア
InsertStringEx( 4 , " " ) ; //挿入:文字列(クリップボードの文頭)
ClearClipboard( ) ;                 //クリップボードをクリア
InsertStringEx( 4 , " " ) ; //挿入:文字列(クリップボードの文頭)
ClearClipboard( ) ;                 //クリップボードをクリア
InsertStringEx( 4 , "memo <memo@memo>" ) ;
ClearClipboard( ) ;                 //クリップボードをクリア
InsertStringEx( 4 , "EdTex <EdTex@PemSoft>" ) ;
ClearClipboard( ) ;                 //クリップボードをクリア
InsertStringEx( 4 , "EdMax <EdMax@PemSoft>" ) ;
// #----------------------* 発信者を選択し末尾に貼り付け
KeyDown( VK_END , 2 ) ;             //Ctrl+Endキー
SetAnchor( ) ;                      //アンカーの設定
InsertString( "\r\n" ) ;            //改行(チェック行の追加)
SetAnchor( ) ;                      //アンカーの設定
PasteByHistoryDialog( ) ;           //履歴から貼り付け
// #----------------------* 「履歴から貼り付け」のキャンセルチェック
SelectAnchorArea( ) ;               //アンカー間を選択
KeyDown( VK_LEFT , 0 ) ;            //←キー(チェック行の直前に移動)
FindString( TRUE , FALSE , FALSE , TRUE , FALSE , FALSE , FALSE , FALSE , FALSE , "^." ) ;  //文字列の検索(次を検索)
IfStringNotFound( 15 ) ;            //キャンセルされた場合はEpilogまでskip
  // #--------------------* 設定する発信者の切り取り
  SelectAnchorArea( ) ;             //アンカー間を選択
  KeyDown( VK_LEFT , 0 ) ;          //←キー(チェック行の直前へ)
  DeleteString( ) ;                 //Deleteキー(追加した改行の削除)
  KeyDown( VK_END , 3 ) ;           //Ctrl+Shift+Endキー
  ClearClipboard( ) ;               //クリップボードをクリア
  CutString( ) ;                    //切り取り(履歴から貼り付けた発信者)
  // #--------------------* ヘッダのアドレスを変更
  KeyDown( VK_HOME , 2 ) ;          //Ctrl+Homeキー
  FindString( TRUE , TRUE , TRUE , FALSE , FALSE , FALSE , FALSE , FALSE , FALSE , "From: " ) ;  //文字列の検索(次を検索)
  KeyDown( VK_RIGHT , 0 ) ;         //→キー
  SetAnchor( ) ;                    //アンカーの設定(貼り付け範囲の始点)
  FindString( TRUE , TRUE , TRUE , FALSE , TRUE , FALSE , FALSE , FALSE , FALSE , "\\n" ) ;  //文字列の検索(次を検索)
  KeyDown( VK_LEFT , 0 ) ;          //←キー
  SetAnchor( ) ;                    //アンカーの設定(貼り付け範囲の終点)
  SelectAnchorArea( ) ;             //アンカー間を選択
  PasteString( ) ;                  //貼り付け
// *----------------------* Epilog
SetFocusToList( ) ;                 //フォーカス:リスト画面へ
RestoreCurrentFindCondition( ) ;    //復元:検索条件
RestoreAutoFormSwitch( ) ;          //復元:自動整形ON/OFF
RestoreMailEditHeaderEditMode( ) ;  //復元:メール編集+ヘッダ編集
// End of EdMax Macro

▲Top


Site Map | HOME > Sub Menu > 発信者(From)変更 概要 | 導入手順 | マクロ