2017-09-26 16 views
2

現在、以前のユーザー入力で生成された電子メールを自動送信するように設定されたコードグループがあります。Excel VBAを使用してプログラムによるOutlookの電子メールによる警告メッセージの送信

これが呼び出されると、個人的に電子メールを生成/送信しますが、ユーザーに「OK」、「キャンセル」、または「ヘルプ」を受け入れるように求めます。

ユーザーがペインを終了するか[キャンセル]をクリックすると、電子メールは送信されません。

プログラムにコマンドを自動的に選択させる方法はありますか?

Private Sub sendemail() 

Dim outlookapp As Object 
Dim mitem As Object 
Dim cell As Range 
Dim email_ As String 
Dim subject_ As String 
Dim body_ As String 
Dim attach_ As String 

'''>>>EMAIL<<<''' 
Set outlookapp = CreateObject("Outlook.Application") 


email_ = "[email protected]" 
subject_ = "General Subject" 
body_ = "General Message" 

'create Mail Item and send it 
Set mitem = outlookapp.CreateItem(0) 
With mitem 
    .To = email_ 
    .Subject = subject_ 
    .Body = body_ 
    '.Attachments.Add "C:\FolderName\Filename.txt" 
    '.Display 'To Display the message with an option to send or cancel 

    .Send 'To auto-send the message 
End With 

End Sub 

私は、次のコードを使用してみましたが、私はそれが失敗したとして、間違った場所でそれを使用している可能性があると考えてきました:

Application.DisplayAlerts = False 

'With function/code 

Application.DisplayAlerts = True 
+2

[セキュリティ]タブの[Outlook]オプションでは、[他のアプリケーションがメールを私に送信しようとすると警告します]の横にチェックボックスがあります。このチェックボックスをオフにするだけです。 – sktneer

+0

このシステムを使用している人は約100人いますが、これはすべてのユーザーが行う必要がありますか?または、「OK」オプションを自動的に選択するためのコードに追加できるものは何ですか? – Excelatwhat

答えて

0

あなたはこのような何かをしようとする...

Set mitem = outlookapp.CreateItem(0) 
With mitem 
    .To = email_ 
    .Subject = subject_ 
    .Body = body_ 
    '.Attachments.Add "C:\FolderName\Filename.txt" 
    .Display 'To Display the message with an option to send or cancel 
    Application.Wait (Now + TimeValue("0:00:02")) 
    Application.SendKeys "%s" 
End With 
関連する問題