【问题标题】:excel: reference cell value to get email recipient for selected row?excel:参考单元格值以获取所选行的电子邮件收件人?
【发布时间】:2014-08-11 11:33:19
【问题描述】:

我正在尝试使用存储为单元格 AF 中的值的电子邮件地址填充我的电子邮件到字段。

AF8 = info@email.com
AF9 = help@email.com
AF10 = hello@email.com

我正在尝试使用选择范围,因为每一行中的每个 AF 单元格都包含不同的电子邮件地址,因此当用户选择了一行时,应该从 AF 中为该行获取适当的单元格值。

Private Sub Worksheet_Change(ByVal Target As Range)

    If Target.Column = Range("CA8").Column Then

        Dim Email_Subject, Email_Send_From, Email_Send_To, _
          Email_Cc, Email_Bcc, Email_Body As String
        Dim Mail_Object, Mail_Single As Variant

        Email_Subject = "New Supplier Set-Up Confirmation"
        Email_Send_From = "purchasing@hewden.co.uk"
        Email_Send_To = Range("AF8").Select
        Email_Cc = "databison@gmail.com"
        Email_Bcc = "databison@gmail.com"
        Email_Body = "Congratulations!!!! You have successfully sent an e-mail using VBA !!!!"

        On Error GoTo debugs
        Set Mail_Object = CreateObject("Outlook.Application")
        Set Mail_Single = Mail_Object.CreateItem(0)
        With Mail_Single
            .Subject = Email_Subject
            .To = Range("AF8").Select
            .cc = Email_Cc
            .BCC = Email_Bcc
            .Body = Email_Body
            .send
        End With

debugs:
        If Err.Description <> "" Then MsgBox Err.Description

    End If
End Sub

但是,当我尝试此代码时,它会出现错误, “outlook 无法识别一个或多个名称”

【问题讨论】:

    标签: excel vba outlook


    【解决方案1】:

    .To 需要一个字符串

    http://msdn.microsoft.com/en-us/library/office/ff860378%28v=office.15%29.aspx

    "...设置分号分隔的字符串列表..."

    Email_Send_To = Range("AF8").Value
    

    一旦 Email_Send_To 是一个字符串值,那么

    .To = Email_Send_To
    

    【讨论】:

      猜你喜欢
      • 2015-04-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-08-17
      • 2020-08-23
      • 1970-01-01
      • 2019-12-27
      • 1970-01-01
      相关资源
      最近更新 更多