下面是一个示例VBA代码,它会在工作簿中查找并拼接多个字符串,并将拼接后的字符串添加为Outlook邮件的CC(抄送)收件人:
Sub AddCCFromWorkbook()
Dim olApp As Object
Dim olMail As Object
Dim ccRecipients As Object
Dim ccRecipient As Object
Dim str As String
Dim rng As Range
Dim cell As Range
' 创建 Outlook 应用程序对象
Set olApp = CreateObject("Outlook.Application")
' 创建邮件对象
Set olMail = olApp.CreateItem(0) ' 0表示邮件
' 设置邮件属性
With olMail
.Subject = "这是一封测试邮件"
.Body = "这是邮件的正文内容。"
.Recipients.Add "recipient@example.com" ' 添加主要收件人
' 创建 CC 收件人集合
Set ccRecipients = .Recipients.Add("cc1@example.com") ' 添加初始 CC 收件人
' 在工作簿中查找并拼接字符串
Set rng = ThisWorkbook.Sheets("Sheet1").Range("A1:A3") ' 替换为你的数据范围
For Each cell In rng
str = str & cell.Value & ";"
Next cell
' 添加拼接后的字符串为 CC 收件人
Set ccRecipient = ccRecipients.Add(str)
ccRecipient.Type = 2 ' 设置收件人类型为 CC
' 发送邮件
.Send
End With
' 释放对象引用
Set ccRecipient = Nothing
Set ccRecipients = Nothing
Set olMail = Nothing
Set olApp = Nothing
End Sub
在上述示例代码中,我们首先创建了 Outlook 应用程序对象(olApp)和邮件对象(olMail)。
然后,我们设置了邮件的主题、正文和主要收件人。
接着,我们创建了一个 CC 收件人集合(ccRecipients),并添加了初始的 CC 收件人。
然后,我们在工作簿中查找并拼接字符串。在示例代码中,我们假设需要拼接的字符串范围是工作簿的第一个工作表(名为"Sheet1")中的A1:A3单元格。你可以根据自己的需求修改数据范围。
最后,我们将拼接后的字符串添加为CC收件人,并发送邮件。