我需要在Outlook 2016中创建一个规则,当" CC中有超过十个电子邮件地址时会弹出警告:"领域。
我在快速谷歌搜索中找到了这个结果,它做了同样的事情,但在" To:"中使用了电子邮件地址。领域。我是VBA的新手,所以我不确定需要更改哪一行来切换它来查看CC电子邮件而不是To。
Private Sub Application_ItemSend(ByVal Item As Object, Cancel As Boolean)
Dim Recipients As Integer
Dim Start As Integer
Dim Last As Integer
Recipients = 1
Do
Start = Last + 1
Last = InStr(Start, Item.To, ";")
If Last = 0 Then Exit Do
Recipients = Recipients + 1
Loop
If (Recipients > 10) Then
Cancel = (MsgBox(Str(Recipients) & " recipients in To field.", vbOKCancel) = vbCancel)
End If
End Sub
答案 0 :(得分:0)
我无法发布"评论",所以我发布了一个"答案"
"分裂" function返回一个数组,该数组基于零(第一个元素在索引0处)因此,ubound为10个元素数组返回9
这是代码,Nathan_Sav建议改变,
加上代码更改,将一个添加到ubound函数的结果
同样...当收件人太多时弹出的对话框没有提到按下任一按钮时会发生什么
Private Sub Application_ItemSend(ByVal Item As Object, Cancel As Boolean)
Dim Recipients As Integer
Recipients = ubound(split(item.cc,";")) + 1 ' shift array index by one
If (Recipients > 10) Then
Cancel = (MsgBox(Str(Recipients) & " recipients in CC field.", vbOKCancel) = vbCancel)
End If
End Sub