複数の添付ファイルを送信するには、いくつか方法があります。
(1)ZIP形式などで、複数のファイルを圧縮して、1つのファイルにする。
・事前にファイルを圧縮しておく
・F列には、圧縮ファイルを指定する
一番簡単なのが、この方法です。プログラムの変更も不要です。
これまでに作成したメール送信プログラムは、テキストファイル以外にも、様々な拡張子のファイルを添付することができます。(BASP21の機能)
もちろん拡張子が、「.zip」形式や、「.lzh」形式などの圧縮ファイルにも対応しています。
したがって圧縮ファイルの中身を変えれば、いろんなファイルを送信することができます。
ただ、事前にファイルを圧縮する作業が面倒だし、どのファイルを圧縮したのか、中身がわかり難いという欠点があります。
(2)G列、H列と増やす。
この方法は、どのファイルを送信するのか、わかりやすいのがメリットです。
でも、いくつ列が必要になるのか、わかりません。列数を増やす度に、プログラムの修正が必要になるのも欠点です。
(3)F列に複数記述する。
そこで一番現実的なのが、この方法です。
ワークシートのF列に、ファイルのフルパスを「;」(セミコロン)で区切って書きます。
あとはプログラムを1行だけ追加すれば、簡単に複数のファイルを添付して送信することができます。
添付ファイルの数が増えても、ワークシートの列数を増やす必要はありません。またどのファイルを添付したのかも、一目でわかります。
確かに2番目の方法ほど、見やすくはありませんが、この書き方に慣れてくると、違和感は無くなります。
今回は、環境変数などの設定でも使われている、「;」で区切ることにしました。
*区切り文字は、デリミター(delimiter)ということもある。
実は区切り文字の「;」は、「,」や「:」など、何でもかまいません。プログラムの中で指定する文字列と、一致させればOKです。
また区切り文字は、1文字でもいいし、「***」のように複数の文字列を指定することもできます。
したがって、わかりやすい区切り文字を使うとよいでしょう。
このように自由に設定できることも、あなたがプログラミングできるメリットです。
それでは、次のステップで、実際に複数の添付ファイルが送信できるように、VBAプログラムを修正することにします。

