2016-04-21 52 views
2

我一直在試圖改善在辦公室的後續電子郵件的過程「生活質量」有一個窗體+ VBA代碼片段,我已經打了一個路障,雖然我已經能夠創建一個全新電子郵件和類似。體,.Attachments.Add,。要等所有的好東西格式化,我一直沒能圖瞭解如何回覆已經存在的電子郵件,這是後續流程的必要組成部分。瞄準一個開放的Outlook電子郵件的人羣(如Outlook 2010)

我看到this SO page給出了C#/ vb.net的解決方案,在使用對象瀏覽器時,我發現VBA中也存在「Application.ActiveExplorer」。這是我目前正在工作:

Private Sub btnSubmit_Click() 
Dim msg As String 
Dim objMsg As Outlook.MailItem 

Set followUp = objMsg.ActiveInspector.CurrentItem 
With followUp 

' Compose message 
msg = "Good Morning," & "<br />" & "<br />" 
msg = msg & "This is a follow-up request for the following outstanding subjectivities: " & "<br />" & "<br />" 

For i = 0 To ListBox1.ListCount - 1 
    If ListBox1.Selected(i) Then 
    Counter = Counter + 1 
msg = msg & ListBox1.List(i) & "<br />" 

Else: If Counter = 0 Then msg = msg & 「nothing」 
End If 
Next 

msg = msg & "<br />" & "If these are not submitted within 3 days, a Notice of Cancellation will be sent." & _ 
"Please let us know if you have any questions or concerns." & "<br />" & "<br />" 

    .Reply 
    .HTMLBody = msg 
    ' .Attachments.Add (" ") 
    Unload subjectivitiesSelection 
    .Display 
End With 
End Sub 

的最終目標是隻是來填充響應消息,使用戶可以只是追加相應的用戶簽名,並把它關閉,沒有什麼花哨或自動但有些東西只是讓生活變得輕鬆一些,並且工作得更快一些。我有其他事情在這個項目中來解決(例如:打OK沒有選擇任何一種預定因素會可能仍然建立電子郵件不管),因爲我去上,但是這可能是我的路徑中的最大障礙。

我道歉,如果這是達不到標準或者是否有遺漏/不清楚,我只是又一個新手尋找一些方向;一直在用Object Explorer,MSDN和普通的舊搜索去學習。如果有什麼不明確的地方,我會盡力澄清。

謝謝你的時間。

回答

0

使用MailItem.Reply方法 - 它返回新創建的MailItem對象。上面的代碼沒有多大意義 - objMsg變量未初始化,MailItem對象沒有ActiveInspector屬性,但Application對象具有此屬性。您可能還想看看Application.ActiveExplorer.Selection集合:它將包含文件夾中當前選定的項目。 Application.ActiveInspector僅適用於在活動檢查器中打開的消息。

+0

這正是你說:我從來沒有初始化我想要使用。我會說我原來的帖子中有一件事不清楚,我**希望選擇當前的_open_電子郵件,而不是當前的_selected_,因爲我的公司將.msg文件歸檔到我們的專有系統中,然後在需要「跟進」時打開.msg文件。 – fixer446