2013-07-10 2 views
3

나는 템플릿에서 생성 된 양식의 "메시지"필드를 내가 선택한 이메일의 설명을 받아 웁니다 매크로 한 : 나는 더 많은 필드를이 템플릿에서보내기 버튼을 클릭 할 때 매크로를 호출하는 방법은 무엇입니까?

sText = olItem.Body 

Set msg = Application.CreateItemFromTemplate("C:\template.oft") 
With msg 
    .Subject = "Test" 
    .To = "[email protected]" 
    'Set body format to HTML 
    .BodyFormat = Outlook.OlBodyFormat.olFormatHTML 
    .HTMLBody = "<HTML><BODY>EmailDesc: " + sText + "</BODY></HTML>" 
    .Display 
End With 

이 콤보 상자처럼 .. 채우기 위해.

내가 보내고 자하는 버튼을 클릭했을 때이 콤보의 가치를 어떻게 얻고 싶으십니까? 그리고 보내기 전에 이메일의 내용에 연결시켜 주시겠습니까? 이 같은

생성 일 :

EmailDesc: TEST SEND EMAIL BLA BLA BLA.. 
ComboboxValue: Item1 

들으

당신은 버튼을 보낼 누르면 발사하는 Application_ItemSend event를 사용할 필요가

답변

6

. 이 이벤트는 ThisOutlookSession module에 만듭니다. 이벤트 서브는 다음과 같이 수 :

Private Sub Application_ItemSend(ByVal Item As Object, Cancel As Boolean) 
On Error GoTo ErrorHandler 

    With Item 'Item is your e-mail 
     'this way you could change your subject just before you send message 
     .Subject = "test subject" 
     'here some changes regarding body of the message 
     .Body = .Body & " Additional text at the end or " & _ 
       "ComboBoxValue: " '& ... reference to combobox value here 
    End With 

Exit Sub 
ErrorHandler: 
    MsgBox "Error!" 
End Sub 

따라서 일부 if statements은 단지 전자 메일의 일부와 함께 작동하도록 추가해야합니다 전자 메일의 각 동작을 할 것이 careful-합니다.

+0

어떻게하면 콤보 상자 값을 선택할 수 있습니까? –

관련 문제