簡體   English   中英

VBA-用條件替換OFT模板中的文本

[英]VBA - Replace text in OFT Template with condition

我從VBA開始。 這次,我為商務電子郵件創建了一個簡單的自動化工具,可以使用OFT模板從excel發送。 下面的代碼非常適合替換文本,但是不能用於創建適當的條件。 我需要添加一個條件,如果該單元格為空,則什么都不做,如果包含某些內容,則在該單元格中添加“ on”和文本。 代碼的“更改源”部分顯然是錯誤的。 有人可以幫忙嗎?

Sub Test()

    Dim OutApp As Object
    Dim OutMail As Object
    Dim strbody As String
    Dim x As Variant
    Dim Sour As String


    Set OutApp = CreateObject("Outlook.Application")
    Set OutMail = OutApp.CreateItem(0)

    On Error Resume Next

    x = Cells(1, 3)

        vTemplateBody = otlNewMail.HTMLBody

        strFind = "NAME1"
        strNew = Cells(x, 3)
        .HTMLBody = Replace(.HTMLBody, strFind, strNew)

'Change SOURCE
        vTemplateBody = otlNewMail.HTMLBody

        strFind = "SOURCE1"
        strNew = if Cells(x, 3) = "n/a" Then .Skip Else = " on " & Cells(x, 12)
        .HTMLBody = Replace(.HTMLBody, strFind, strNew)

僅供參考:這兩個程序段的運行方式完全相同

OutApp.CreateItem(0)
OutApp.CreateItem(1)
OutApp.CreateItem(2)
OutApp.CreateItem(3)
OutApp.CreateItem(4)

with OutApp
    .CreateItem(0)
    .CreateItem(1)
    .CreateItem(2)
    .CreateItem(3)
    .CreateItem(4)
end with

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM