今回で、このシリーズは最終回といたします。本記事の最後で、現在のエクセルをダウンロードできます。当初の予定では、宛名や同報メールの機能も入れる予定でしたが、断念しました。VBAコードが長く複雑になってしまい、ブログでの解説に向かないと判断いたします。宛名についてフリーの良いソフトが多数あり、大抵はCSV取り込みがサポートされています。これらを活用するのが現実的には最も良い方法でしょう。CSVの出力をマクロで自動化すれば良いです。これは、極めて簡単ですので、チャレンジして下さい。複数レイアウト(葉書、封筒、ラベル等)の位置調整等はかなり大変です。簡単にやるなら、VLOOKUPだけでもできますので、作ってみるのも良いでしょう。同報メールについてBASP21という、メールの送受信や、HTTP・FTPなどの機能を提供してくれるDLLがあります。フリーソフトですが、素晴らしいDLLとの評判です。(私は使用した事がありません)BASP21のページエクセルでは、これを使用するのが最良だと判断します。ネットにいろいろ情報がでていますので、興味のある方は調べてみると良いでしょう。認証方法等についての知識が無い方は、かなり苦労する事になります。SMTP」←これが何か理解できない人は、まずはそれらの知識を。私も使用した事がありませんので、ネットで情報を集める必要があります。最後に1つ解説をします。シートの指定方法についてです。本ソフトではシート名の変更に自動対応させる為に、関数を使用した方法を使いました。Constで、シート名を指定する方法が簡単です。シート名を変更した場合は、このConstを変更するだけで対応できます。シートのオブジェクト名を使用する方法も考えられますが、シートコピーに対応できません。以下、シートの指定方法です。プロジェクトウインドウで先頭シートが、Sheet1(Sheet1)、となっている場合です。1)上記3通りの指定方法があります。100万回のテストでは、1.15秒2.13.75秒3.7秒コレクションやオブジェクトについて理解していれば、この結果は事前に想像できます。1.と2.では、コレクションのインデックスを指定した方が早いのは明確です。3.はコレクションを参照せず、直接オブジェクトを指定しています。ブラウザ」には、Sheet1が表示されているのです。1.はシート名を変更した場合、コンパイルエラーにはなりません、実行時にエラーになります。2.はシートの順番を変更した場合、実行時に他シートを参照してしまいます。3.はシートをコピー後に、元を削除、新シートを元の名前にした場合、コンパイルエラーになります。Constで、シート名を指定する方法が簡単確実です。現在のエクセルは、以下で、ダウンロードできます。ダウンロードダウンロード用の別サイトが表示されます。(ベクターに掲載した時点で、ダウンロードは停止します。いつになるかは未定です。)自由に改造し、自由にお使い下さい。販売目的での再配布はご遠慮下さい。テストはしていませんので、バグもあると思われます。ブログで解説した時点のモジュールからは、かなり修正し、バグも減らしています。実務で使用したい場合は、事前にテストをしっかりお願い致します。(本ソフトウェアの使用によるあらゆる損害に、作者は一切の責任を負いません。)その時の修正方法等の相談は、無料で受け付けします。本ソフトは、もう少し機能追加し、さらにテストを行った上で、ベクターに掲載する予定です。その時は、本ブログでご案内いたします。ベクターでは、VBAコードはパスワード保護します。今回のシリーズはこれで終了します。次回シリーズを現在考え中です。初心者向けが良いのではないかと考えています。次回シリーズにご期待下さい。最終回このサイトがお役に立ちましたら「シェア」「Bookmark」をお願いいたします。間違いやご指摘がありましたら、「お問い合わせ」からお知らせいただけると幸いです。掲載のVBAコードは動作を保証するものではなく、あくまでVBA学習のサンプルとして掲載しています。掲載のVBAコードは自己責任でご使用ください。万一データ破損等の損害が発生しても責任は負いません。最終回このサイトがお役に立ちましたら「シェア」「Bookmark」をお願いいたします。