2016-09-29 7 views
1

Excelから電子メールを送信する必要がありますが、submitを押した後に電子メールの本文にuserformの値を入れる必要があります。電子メールのVBAコードにuserform入力を電子メール本文に追加する

私はさまざまなことを試しましたが、私は以下のコードに固執しています。

Dim aOutlook As Object 
Dim aEmail As Object 
Dim rngeAddresses As Range, rngeCell As Range, strRecipients As String 

Set aOutlook = CreateObject("Outlook.Application") 
Set aEmail = aOutlook.CreateItem(0) 

'set Importance 
aEmail.Importance = 2 
'Set Subject 
aEmail.Subject = "TestMailSend" 
'Set Body for mail 
aEmail.Body = "Campaign Name" & Me.ComboBox5.Value 
       "Job Number" & Me.ComboBox4.Value 
       "Revenue" & Me.ComboBox3.Value 


'send one off to 1 person use this static code 
'aEmail.Recipients.Add "[email protected]" 
aEmail.Recipients.Add "Insert email address here" 
'Send Mail 
aEmail.Send 
+0

本当に問題がありますか?ユーザーフォームにコードがありますか?あなたは電子メール本体のデータを連結するために '&'を使うべきです – RCaetano

+0

これは問題です:aEmail.Body = "キャンペーン名" Me.ComboBox5.Value "ジョブ番号" Me.ComboBox4.Value "収入"私。 ComboBox3.Value –

+0

私の答えを確認して問題が解決したかどうか確認しましたか? – RCaetano

答えて

1

たぶん、あなたは以下を変更する必要があります。

'Set Body for mail 
aEmail.Body = "Campaign Name: " & Me.ComboBox5.Value & chr(10) & _ 
       "Job Number: " & Me.ComboBox4.Value & chr(10) & _ 
       "Revenue: " & Me.ComboBox3.Value 

&は、2つの値をマージし、chr(10)は、改行を追加し、_を使用すると、複数行のコードを書くことができます。

HTH;)

+0

ありがとうございます、それは問題を解決しました。しかし、それはすべて一文になります。各レコードがそれ自身の行に表示されるように複数の行に調整する方法はありますか?本当にあなたのサポートに感謝します。 –

+0

確かに、私はすでに編集しています;) – RCaetano

+0

それは素晴らしいです。よく働く。ご協力いただきありがとうございます。このサイトに貢献していただければ幸いです。 Scott –

関連する問題