有人在工作時問我是否可以實現一個簡單的系統,讓他根據他可以輸入的幾個參數發送Outlook模板郵件。在Outlook VBA中使用地址簿
一個例子是這樣的消息:
"Hello,
Please be informed that system **Parameter1** is current down.
Regards,"
我在想使Outlook中VBA的形式,將動態查找字符串風格像一個參數的時間量(如@@[email protected]@
)是在某個模板中找到並隨後在表單中爲每個找到的參數創建一個編輯框。
問題是,我顯然想爲收件人添加一個框。我需要找到一種方式使呼叫Outlook通訊錄,並使其行爲像一個。這比我所希望的更不直觀。到目前爲止,我只設法做到以下幾點:
Dim snd As Outlook.SelectNamesDialog
Dim displayLL As Boolean
Set snd = Application.Session.GetSelectNamesDialog()
snd.NumberOfRecipientSelectors = Outlook.OlRecipientSelectors.olShowTo
snd.AllowMultipleSelection = True
displayLL = snd.display()
正如你所看到的,這只是彈出的地址簿,讓我選擇的幾個地址。但是我很難理解如何實際製作一些實際上像常規Outlook郵件中的「To:」和「CC:」字段的字段。
我認爲這個問題沒有答案的原因是你似乎陷入了特定的實現。你能否清楚說明你的同事的目標是什麼?這樣,有人可以提出一種更簡單或更合適的方法。 – JimmyPena
@JP這裏的目標僅僅是爲了能夠保存模板以發送頻繁發送的郵件(最多每天多次)。他要求製作一個系統,以便他可以在模板郵件中定義參數,這樣一個小型的VBA程序就可以輕鬆地通過它並用他指定的值替換參數值。這樣他就不必每次都處理不斷的'Control-C' - 'Control-V'shenanigans。就像你說的,我太專注於單個實現。我最終使用了一個更簡單但不那麼花哨的解決方案,我在下面解釋。 – RobinM
感謝您的回饋。看起來你找到了一個滿意的解決方案。 – JimmyPena