- ベストアンサー
マクロで携帯にメール送信
いつもお世話になっております。 過去に何度か質問をさせていただき、今回のマクロまでたどり着くことが出来ました。 下記の内容にて、作成しました。 ここで、 (1)セルB1にあて先メアドを置いた場合に、メアドを載せる場合 (2)メールを送信する命令で、【myItem.Send】や【SendMail】ではメールが送信されている場合と送信待機の場合がはっせいしております。必ず、送信するまでの命令を、お教えいただきたいです。 PC環境は、XPです。 メールはMicrosoft Office Outlookです。 Sub CreateMail() '参照設定 : Miscosoft Outlook 9.0Object Library Const ShName = "MAIL送信" Const SbjAdd = "b2" Const BodyAdd = "b3:b14" Dim olApp As Outlook.Application Dim objMail As Outlook.MailItem Dim Rng As Range Dim StrBody As String Set olApp = Outlook.Application Set objMail = olApp.CreateItem(olMailItem) For Each Rng In Range(BodyAdd) StrBody = StrBody & Rng.Value & vbLf Next Rng With objMail .Subject = Worksheets(ShName).Range(SbjAdd).Value .Body = StrBody .Display End With End Sub
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
こんにちは。 今のコードで、どこで、たぶん、Outlook が、どこでリターンコードを発生させるか、もしくは、エラーコードを取るかということになるのだろうけれども、一般的に、こちらでは、あまりOutlook 自体を使っている人はいません。出来ないというのではなくて、ダイアログボックスが立ち上がってしまうので、そこで手動になってしまうからなのですが。 >必ず、送信するまでの命令を セルに、SendMail の戻り値 0 をおくようにするわけで、Loop し、途中に、Wait などを儲けて、全てが、0 または、Boolean値のTrue になるまで繰り返す、ということになるのではないか、と思います。 質問者さんのログを見てみると、最近、BASP21 を勧めてくれた人がいたようですね。 どうも、そちらには移行しなかったようですね。 今、そのBASP21 の SENDMAIL の内容を調べてみました。 http://www.hi-ho.ne.jp/babaq/bacs1.html SendMailメソッド ret = bacs1.SendMail(mailto, names & "様" & vbCrLf) ここですと、戻り値得られます。もちろん、本質的には、SendMail でも同じなのですが、機能的には、こちらのほうが上というよりも、便利なのですね。 もう一度、こちら側で考えられませんでしょうか? なお、全体を入れるなら、インストールになりますが、単体ですと、確か、呼び出しが出来たように思います。もしも、会社の規定があれば、やむを得ず、Outlook側でせざるを得ないですが。 Declare Function SendMail Lib "bsmtp" _ (szServer As String, szTo As String, _ szFrom As String, szSubject As String, szBody As String, szFile As String) As String
その他の回答 (1)
- x0000x
- ベストアンサー率52% (67/127)
こんにちは。 VBAでメール送信なら以下のサイトが参考になります。 http://www.asahi-net.or.jp/~ef2o-inue/vba_o/sub05_800_080.html そのままダウンロードして利用可能です。
お礼
レス、ありがとうございます。 PCの使用環境が、やはり会社で個々のPCを利用するので、様々なアイテムをダウンロード&インストールが難しいのです。 今回は、手間になりますが、手動で送受信を行うことにします。 ありがとうございました。
お礼
レス、ありがとうございます。 PCの使用環境が、やはり会社で個々のPCを利用するので、様々なアイテムをダウンロード&インストールが難しいのです。 今回は、手間になりますが、手動で送受信を行うことにします。 ありがとうございました。