領収書を各自にメールで一斉送信します
2024.08.01
2024.8.31 一部更新しました。
パスマーケットでオンラインのイベント募集したとき、領収書が発行されないのはイベントの主宰者側としてはちょっとイタイ。でもって、それぞれの希望者に領収書を送付するのが結構面倒。
そこで、Excelの各行の任意のセルに記載された宛名を挿入して、自動で領収書のPDFファイルを作り、かつ、Excelの各行の任意のセルに記載されたメールアドレス宛に、その領収書を添付して送付するExcelVBAファイルを作りました(デフォルトでは310名まで対応。メール送信は50名ずつを推奨)。ChatGPTさんとClaudeさんの力を借りました。ExcelとOutlookで動きます。
ダウンロードはこちらから
以下はマニュアルになります
1.はじめに、ファイルを開いて「送信リスト」シートをクリックすると、以下の画面が開きます。4行目がメールで送信する内容で、7行目からが送信先になります。B列に〇の入った行のE列のメールアドレス宛に、K列のファイルを添付して、4行目の内容が送信される、という感じになります。
2.パスマーケットなどにある送信先データを7行目から貼り付けます。「会社名」、「名前」、「メールアドレス」の3つの情報をC列、D列、E列に貼り付けてください。今回は例として、サンプルから10名分のデータを貼り付けました。すると、F列の領収書宛名の欄に自動でC列の会社名が挿入されます。もし、領収書の宛名を個人名にしたい場合は、G列の「御中」を「様」に変更してください。これで領収書宛名が個人名になります。
3.では領収書(PDFファイル)を作成していきます。シートを「領収書」に移動します(以下図)。セルのA1からH25までが印刷されますので、金額や但し書き、会社名などを適宜変更してください。なお、領収書No(セルH2)と領収書宛名(セルA3~C3)は空白のままで構いません。
4.領収書の内容が完成したら、領収書の開始番号と作成したPDFファイルの保存先を指定します。まず、領収書の開始番号を、セルJ1に入力します。今回は「1」と入力しておきます。そして、「保存先フォルダ」ボタンをクリックして、保存先を指定します。今回は「C:\Users\3neko\Desktop\商品\個別メール送信\領収書」としました。すると、セルJ3に保存先フォルダ名がフルパスで入力されます。
5.そして「フォルダに保存」ボタンをクリックすると、PDFファイルが、シート「送付先リスト」の7行目からの順番で、7行名のF列にG列を加えた名前(つまり、会社名御中もしくは個人名様)に「(領収書)」を加えたファイル名で保存先に作成されると共に、J列の7行目からそのファイル名が表示されます。
6.シート「送付先リスト」に戻って、確認してみてください。J列に保存先フォルダが、K列にファイル名が、L列にはファイル確認用にリンクが貼ってあります。L列をクリックして、作成された領収書の宛名がF列と一致しているか確認してください。また領収書番号がA列と一致しているか確認してください。
7.では、いよいよ送信します。3行目にメールタイトル、4行目にメール送信内容を入力します。4行目のメール送信内容のところですが、送信時にはG列で「様」を選択した場合は自動で、1行目に相手先の会社名(C列)と名前(D列)と様(G列)が挿入され、「御中」を選んだときは相手先の会社名(C列)と御中(G列)が挿入されます。PDFを作成した後にG列の値を変更しても、作成済のPDFファイルは影響を受けません。ということで、相手先の入力は不要です。そして、B列に、送信したい相手に「〇」を付けます。そして「送信スタート」ボタンをクリックします。
8.すると、Outlookが開き、以下のとおり、各人ごとにメールが作成されます(※まだ送信されていません)。例では、「送付先リスト」の16行目(G列では「様」が選択されています)の、松本さまのメールアドレス宛に、株式会社サンプル10社宛の領収書が添付されて、メール本文1行目には「株式会社サンプル10 松本誠様」と自動で入力されていることが確認できます。これで問題なければ、「送信ボタン」をクリックすれば、送信されます。
9.なお、今回はメールの作成までが自動処理となっていますが、送信まで一気に自動で処理する方法もあります。その方法は、シート「送信リストマニュアル」に記載されています。ただ、途中で止めることができないので、あまりおススメはしません。ここまで自動で処理できるので、最後の要(送信)は、自動で処理せず、目で確認して進めた方が良いかと思っております。(と言いつつ、自動で送信したことありますが…。というのは、送信先が900件弱あったものですから…。でも、何かの拍子でずれたら全てずれて送信されるので、緊張しましたね…)
また、今回のように、送信せずに作成で留まる場合も、多くのメールを一度に作成すると、Outlookのメモリの使用量が増加して、パフォーマンスが低下しますので、50~80件ごとにメール送信処理することをおススメします。その方がシステムに負担をかけず、また、送信する人間の負荷も和らぐかと思います。一方で、一気に自動送信する場合は、システムに多くの負荷はかかりません。
10.このファイルの使用等は、すべて自己の責任にて行ってください。 このファイルの使用等によって、皆さまが損害等を受けた場合でも、当方は一切責任を負いません。