ExcelVBA【実践】自動でメールを送信するシステム開発!Outlook操作!【解説】
Vložit
- čas přidán 28. 07. 2024
- ▼動画を見ながら実践できるようにコンテンツを配布中
it-yobi.com/excel-p-no102/?li...
【おすすめの参考書】
it-yobi.com/office-excel/#doc...
+---------------------------+
■IT予備メンバー募集
+---------------------------+
勉強を継続するためのサポートを行います。
その中には、動画内の作品の配布や質問し放題などを用意しています。
▼詳しくはこちら▼
it-yobi.com/member/
+---------------------------+
■目次
+---------------------------+
00:00 挨拶
00:05 完成イメージ
00:30 準備
00:46 作成(立ち上げ~参照設定)
02:09 作成(sendEmail関数)
12:45 作成(sendEmail関数)※補足
13:30 作成(sendEmail関数)
13:50 作成(送信ボタン)
14:06 完成
14:32 プログラムの全体
18:06 まとめ
+---------------------------+
■マンツーマンの講座(基礎から業務改善まで)
+---------------------------+
基本的な使い方から、業務相談、開発サポートまで行っています。
【Excel】基本操作からVBAまで
www.street-academy.com/myclas...
【Googleスプレッドシート】基本操作からGASまで
www.street-academy.com/myclas...
+---------------------------+
■開発依頼・相談・その他の仕事の連絡はこちら
+---------------------------+
気になることがあれば、ご連絡ください。
word07q@gmail.com
+---------------------------+
■再生リストはこちら(Excel・Googleスプレッドシート・Pythonなど)
+---------------------------+
タスク管理表やカレンダーなど細かくまとめています。
/ @chanryo_eff
+---------------------------+
■SNS
+---------------------------+
TwitterではCZcamsでは発信していない小技などを定期的に配信しています。
【Twitter】効率化の小技を発信
/ chanryo_eff
【Instagram】作品を発信
/ chanryo_eff
【TikTok】Shorts動画を発信
/ program_chanryo
#IT予備にてファイル配布中
こちらで配布しています!
it-yobi.com/excel-p-no102/?link=4
【配布あり】こちらでExcel講座をまとめています!
it-yobi.com/course/?pageNo=1&orderNo=2&categoryNo=10&link=4
●---Excel【基礎】---●
Excelを始めるにあたり、必要な知識をまとめています!
詳しくは再生リストにて!
czcams.com/play/PLuUrleRMhKDc1thXw-EmZAU34vhLrKnm3.html
●---Excel【実践】---●
実際に開発しながら解説しています!
詳しくは再生リストにて!
czcams.com/play/PLuUrleRMhKDf4BrAPNt5lfJ7bGCcgCQUw.html
●---Excelその他---●
他にもデータベースなど再生リストを用意!
czcams.com/channels/y5cpoeTKqZ2cDzWX8NB3Gg.htmlplaylists
●---Googleスプレッドシート【基礎】---●
Googleスプレッドシートを始めるにあたり、必要な知識をまとめています!
詳しくは再生リストにて!
czcams.com/play/PLuUrleRMhKDe5kCiV88fRUuxsMvZ5asJC.html
●---Googleスプレッドシート【実践】---●
実際に開発しながら解説しています!
詳しくは再生リストにて!
czcams.com/play/PLuUrleRMhKDfjumSrU4Zb1PcH0WKqyg0m.html
動画のコードを観ながらテストメールを作成したら自動的にメールが作成されたので嬉しかったです!
Outlookと連携させる方法(コード等)を見つけることが出来なかったので、教えてくださりありがとうございます(^^)
いつもありがとうございます!
お役に立てて何よりです!
次回、「シートの内容を自動でPDF化し、メールに添付して送信する」というものを動画でアップするので、よかったら見ていただけると嬉しいです!😊
女子高生です◡̈*.。
ちゃんりょうさんの動画からプログラミングに興味を持ち、とりあえずJavaScriptから独学で勉強し始めました!
「すごいなぁ」と思いながら動画を拝見してます🥺✨
コメントありがとございます!
そういっていただけて嬉しいです!
JavaScript良いですね😊
もし躓きそうな時がありましたら、また呟きに来てください!😎
いつも拝見させて頂いてます。
分かりやすい説明で助かっています!
一つ質問なのですが、
outlookを開いた状態でないと送信されないのです…
エクセルでは送信完了になっているのですが、何か対策はあるでしょうか?
すみませんが宜しくお願いします🙇♂️⤵️
こちらこそいつもありがとうございます!
送信されないことに関してですが、
恐らくOutlookがバックグランドで立ち上がって重複して呼ばれているのかなと思います💦
主な原因はプログラム内でOutlookが正常に終了していないのに、再度呼び出したりすることなどが上がります。
そうなったときの対策の1つを載せておきます。
1.Ctrl+Shift+Escを押しタスクマネージャを立ち上げます。
2.開かれたタスクマネージャに、「ファイル/オプション/表示」などのメニューがない場合は、左下の「詳細」をクリックします。
※左下に「簡易表示」と書かれている場合はそのままで大丈夫です。
3.「プロセス」タグを開き、バックグランドプロセスを展開します。
4.バックグランドプロセス内に、「Miscrosoft Outlook」がありましたら、選択して「タスクの終了」をクリックします。
恐らく、上記の手順で解決できると思います😭
丁寧な説明ありがとう御座います🙇♂
バッググラウンドにOutlookありました!
タスク終了して、やり直してみたのですが、やはり出来ませんでした(泣)
あと、マクロ実行した後、送信されず。
その後Outlookを開いた時点で送信される様な感じです。
忙しいのにすみませんがご教授願います🙏
@@user-hs7oz9qd3x
ん~ちょっと分かんないかもです😂
関係あるか分かりませんが、既定のアプリの設定などはOutlookでしょうか??
既定のアプリの設定は Windowsキー + R でファイル名の指定を表示して、「COMPUTERDEFAULTS.EXE」と入力すると簡単に開けます。
その他の方法などは、レイカズさんのPCの設定が分からないのでちょっと分かんないかもしれません😭
また、僕の知識不足ということもあるので、調べて見つかった方法を片っ端からチェックしていく必要があるかもです💦
ちなみにプログラムはご自身で書かれたものか、サイトよりダウンロードされたものかどちらでしょうか?
@@chanryo_eff
すみません‥上手くいきました(T_T)
ちなみにちゃんりょうさんのプログラムを見て書きました!
貴重はお時間取らせてしまってすみません🙇♂💦
また動画楽しみにしてます!!
解決したみたいでよかったです!😊
別のシートの本文を使うにはどうすればいいですか?
Worksheetsで別のシートを参照すれば実現できます!
今更ですがコメント失礼します。
このマクロに、outlookの署名を反映させる処理を追加したい場合どうすればよろしいでしょうか。
outlook vba で署名について検索すると情報が見つかるかもです。
ユーザ定義型は定義されていませんとエラーがでた場合は、何が問題でしょうか?
ご視聴ありがとうございます!
動画前半の参照設定はされましたでしょうか?
@@chanryo_eff はい。しました。しかし、また同じエラーがでます。
@@shhsshhs177 さん余計なお世話かもしれませんが、
こちらとかコピペしてみてはいかがですが?Option Explicit←強制的に変数を定義できますよ😊
はじめまして。質問があります。
動画で紹介いただいたコードでフォントの変更はできますでしょうか。
といいますのも、Gmailでこちらのコードでのメールを受信した場合、Gmailのデフォルトのフォントではないフォントで表示します。Outlookの仕様を反映しているからかとは思いますが、もし対応方法がございましたらご教示ください。
一言で説明できる内容ではないので、こちらでは回答できませんが、本文のフォントなどを変更することは、コードの一部を修正することで可能になります。
質問失礼致します。
こちらExcelから送信ボタンでGmailには送信出来ないでしょうか?
Gmailの操作は可能になりますが手法が大きく異なります。
一番簡単なのは、「Gmailに登録してあるメールアドレスをOutlookにも登録して、送信などはOutlookから行う」などかと思います!
@@chanryo_eff 返信ありがとうございます。
なるほど。
やはり難しそうですね。検討してみます。
サンダーバードでも可能でしょうか?
可能ですが、こちらの方法とは大きく異なります💦
参考の記事がありましたので載せておきます。
gohomeasap.com/thunderbird-11/
一番簡単な方法は、Outlookにサンダーバードで使用しているメールをIMAPとSMTPで設定して、こちらのマクロを活用するのがいいかと思います!※Outlookへの設定方法は調べると見つかります!
@@chanryo_eff
返信ありがとうございます
こちらのコードで無事にoutlookで自動でメール出来たのですが、エクセル上では文字に色や大きさや太さを変えたところがoutlook上では反映されず全て一律同じフォントになってしまうのですが、何か解決策はありますでしょうか?
セルの文字の色情報などに関してもHTML形式に変換する必要があります。
そのため、セルの色を直接変更せず、あえてHTML形式で記述する(赤色にする場合は、その文字をで囲むなど)か、もしくは、セルの情報からHTML形式に変換する仕組みを別で開発する必要があります。
ご丁寧有難う御座います。
早速参考にさせて頂きます。
機会が御座いましたら宜しくお願い致します
これ、outlookがなぜかすぐ落ちちゃうから送信できない。
謎ですね…
すみません教えてください。
本文をa7に書いて、a7を本文として、a7の本文中の日付、会社名、担当者をいろいろなメールで使いまわせるように送信の際にリプレイスで置換したいです。
a1、a2、a3に入力した文言にそれぞれ置換したいのですが、下のように書くと、なぜか担当者しか置換されず、日付や会社名は置換されないそのまま残ってしまいます。
原因わかりますでしょうか?
OlMail.body = range (“a7”).value
.body =replace( range (“a7”).value,”日付”, range (“a1”))
OlMail .body =replace( range (“a7”).value,”会社名”, range (“b1”))
OlMail .body =replace( range (“a7”).value,”担当者”, range (“c1”))
実際のシートの内容などを見てみない限り、判断しがたいです…
個別の相談に関しては、概要欄に記載していますストアカ(個別講座)にて対応しているため、ご検討いただけますと幸いです。
一点、Replaceの設定値に関して、置換対象の文字列は「Range("A7").Value」となっていますが、置き換える文字列には「Range("A1")」と「.Value」が書かれていないのが気になりました。
特別な意図がない場合は、片方のみが省略されているのが違和感なため、「Range("A1").Value」と統一した方が良いかと思います!
※記述漏れでしたら申し訳ございません💦
@@chanryo_eff
記述漏れでした。申し訳ないです。
直しても変化はありませんでした。
個別講座はマクロやVBA以外にも教わることはできますか?Accessなど。
VBAやマクロももちろん教わりたいのですが、Accessの方が希少価値の高く、応用の効くスキルかなと思っているため、Accessも可能ならば教わりたいのですが。。
@@user-oh3fs3fv7t
現時点では、ExcelとGoogleスプレッドシートのみを展開しているため、Accessは対応していません🙇♂