[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『MicrosoftCDOを利用したExcelVBAでのメール送信』(snb1001)
いつもお世話になっております。
net上から株式情報を入手し、それをエクセルで加工し、
最終的に1つの数値にしたものが、エクセルの「G6」セル番地
に入っています。2桁〜3桁の小数第1位のものです。
この数値だけを自分宛てのgmailで送信したい、と考えています。
(例えば、ある閾値を超えたタイミングで。もしくは下がったタイミングで。)
netで調べたところ「MicrosoftCDOを利用したExcelVBAでのメール送信」で、できそうでした。そこで
以下のVBA([Excelでお仕事!]から拝借)があったのでそのままいただきましたが
何度やっても次のエラーメッセージが出ます。
「-2147220973 転送においてサーバーに接続できませんでした」
ちなみに当方はwin7を使っています。
ただ、このサイトの注釈によれば、「うまくいかない時は「SMTPサーバ名」ではなく
IPアドレスを入れるように」書いてありましたがそれは解りませんでした。
'*******************************************************************************
' CDOでメールを送信する
'*******************************************************************************
Option Explicit
'*******************************************************************************
' メール送信テストプログラム
'*******************************************************************************
Sub TEST()
Dim MailSmtpServer As String Dim MailFrom As String Dim MailTo As String Dim MailSubject As String Dim MailBody As String Dim strMSG As String
' 送信確認 If MsgBox("メールを送信します。" & vbCr & _ "SMTP,発信者,宛先等は正しいですか?", vbYesNo) <> vbYes Then Exit Sub MailSmtpServer = Cells(1, 2).Text ' SMTPサーバ <SMTP.gmail.com>を入力 MailFrom = Cells(2, 2).Text ' 発信者 <自分のgmail> MailTo = Cells(3, 2).Text ' 宛先 <自分のgmail> MailSubject = Cells(4, 2).Text ' 件名 <件名> MailBody = Cells(5, 2).Text ' 本文 <約50文字> ' メール送信(CC,BCCはブランク) strMSG = SendMailByCDO(MailSmtpServer, MailFrom, MailTo, "", "", _ MailSubject, MailBody) ' 文字コードを任意に指定する場合は以下のようにします。 ' strMSG = SendMailByCDO(MailSmtpServer, MailFrom, MailTo, "", "", _ MailSubject, MailBody, "", cdoISO_2022_JP) If strMSG <> "OK" Then MsgBox Mid(strMSG, 3) End Sub
< 使用 Excel:Excel2010、使用 OS:Windows7 >
CDO gmail エラーメッセージ で検索してみると、そのサンプルそのままではなく、ポート番号等を変更しなければならないようです。 (cai) 2017/04/28(金) 08:58
検索キーワード(CDO gmail エラーメッセージ)助かりました。
これでもう少し情報を積み重ねて、「メール送信」の肉付けをしてみます。
早速のレスポンス、ありがとうございました。
(snb1001) 2017/04/28(金) 10:34
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.