添付ファイル付きメールを自動生成するスクリプトを作成しました。
使用シーンは、週報や日報のような特定の相手に対して定期的に添付ファイル付きメールを送信するシーンを想定して作成しました。


1.スクリプト処理構成
2.スクリプト実行方法
3.想定使用方法
4.スクリプト詳細
5.完成コード

1.スクリプト処理構成
本スクリプトの構成は下記の通りです。
 1.スクリプトファイルにドラッグアンドドロップされたファイルを添付ファイルに設定
 2.週報ファイルのタイトルをもとにメール本文および件名を作成
 3.サンダーバードを起動

2.スクリプト実行方法
本スクリプトの実行方法は下記の通りになります。
 1. ユーザー操作:週報ファイルをスクリプトファイルにドラッグアンドドロップ
 2. Thunderbirdの【送信】をクリック

3.想定使用方法
本スクリプトは、単一ファイルを送信することを想定して作成しています。ドラッグアンドドロップで複数ファイルを指定した場合でも、最初のファイルのみ添付ファイルになります。

4.スクリプト詳細
さて、ここからが本題のスクリプトです。

 4-1.スクリプトファイルにドラッグアンドドロップされたファイルを添付ファイルに設定

 4-2.オブジェクト作成
  ApplicationをRunするためのオブジェクトを作成します。
  VBScriptの特徴なのですが、オブジェクトを作成するときも含めて、変数を宣言せずに初期化から行うことができます。代償として、typoすると別変数として認識されてしまうので、Option Explicitを冒頭に記述することで、変数宣言を強制し、typoしてもわかるような安全なコードにすることもできます。
  でも、今回はパス!

 4-3.メール要素作成
Thunderbirdの実行パスに渡す引数の構成は下記の通りです。
 1) -compose を指定します。
  ThunderbirdをComposeモード(=作成モード)で起動するオプション

 2)メールアドレス以外の要素は""で囲みます。
  VBScriptの言語仕様として、"""のように連続して記述することでエスケープします。

5.完成コード
 では、完成コードです。

宛先・件名・本文・添付ファイルが入力された状態のメール作成画面が表示されます。
あとは、内容が正しいことを確認して、【送信】を押せばOKです。

送信者はThunderbirdに既定の送信者として登録されているメールアドレスになります。

今回のスクリプトは以上になります。

宛先、件名、本文の設定値を外部の設定ファイルから読み込むスクリプトも作ってみようと思っています。

そのとき、ついでに複数ファイルを添付できるように改修してみます。

最後までお読みいただきありがとうございました。

明日が、あなたにとってなりたい自分に近づける日になりますように。

カテゴリー: VBScript

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です