写入新电子邮件:如果Date = vbMonday将日期更改为“文本”

问题描述 投票:1回答:2

我开发了代码,允许我发送带有预定义文本的电子邮件,我将其设置为仅在日期为Date -1时更改

我需要添加另一个功能:如果当天是vbMonday插入“周末”而不是Date - 1

我正在考虑的事情:If Date = vbMonday then instead of Date - 1 enter "weekend"

这是部分:

Sub Email_Outlook()

    Dim OutApp As Object
    Dim OutMail As Object
    Dim strbody As String

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

    strbody = "Hi," & vbNewLine & vbNewLine & _
              "No events: " & Date - 1 & vbNewLine & vbNewLine & _
              "Thanks" & vbNewLine & vbNewLine & _
              "Thomas"

谢谢

vba outlook-vba
2个回答
3
投票
strbody = "Hi," & vbNewLine & vbNewLine & _
          "No events: " & IIf(Weekday(Date) = vbMonday, "weekend", Date - 1) & vbNewLine & vbNewLine & _
          "Thanks" & vbNewLine & vbNewLine & _
          "Thomas"

1
投票

在工作日尝试这样:

Public Sub TestMe()    
    If Weekday(Date) = vbWednesday Then
        Debug.Print "It is Wednesday!"
    End If    
End Sub
© www.soinside.com 2019 - 2024. All rights reserved.