2012-10-15 97 views
2

我試圖做一個合併,並嵌入了一些邏輯:我發送指令到收件人列表,只包括適用於每個收件人的消息的部分。數據從Excel表中填入一列用戶名/電子郵件地址,以及帶有標誌變量的列,用於指定每個用戶是否應該收到列中指定的一段指令。我不太瞭解VB,我想使用這些標誌變量來指定是否應將與該列對應的指令包含在消息中。選擇性郵件合併

請讓我知道如果這在VBA中甚至是可行的,或者有更好的方法來解決這個問題 - 目前指令的收件人列表很小,但預計會很快增長,而且我希望在此之前發展這個過程。

更新:我要補充:我怎麼應該去這樣做呢?什麼資源會有幫助 - 指南,pastebin等?

+0

要回答你的問題,這在VBA中是非​​常可行的。 –

+0

謝謝!我應該更清楚:請參閱更新。我不知道VBA,更多的細節將不勝感激。 – premiumFrye

+1

做一個谷歌搜索'EXCEL VBA For Each Loop'EXCEL VBA AutoFilter','EXCEL VBA Range Offset' ...這會給你一個很好的開始。另外,嘗試用僞代碼(你想要代碼執行的英文版本)寫出邏輯,然後將其翻譯爲實際代碼。 –

回答

0

如果你不想包含特定的收件人一個段落,你可以在Excel表格中設置該字段的文本爲空白(即=「」)。郵件合併字段仍然存在於模板字母中,但不會與任何可見文本對應,並且不會佔用任何空間。如果一個段落太長而無法放入單個Excel單元格中,則可以將其分割爲更小的塊。

你可以做到這一點,而不會因爲你可能要包括每個段落在Excel表中的列訴諸VBA。這些可以通過基於標誌列的vlookup或if函數依次填充段落文本或空白。