Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
VBA电子邮件循环以在Microsoft Access中发送报告_Vba_Loops_Email_Ms Access_Ms Access 2010 - Fatal编程技术网

VBA电子邮件循环以在Microsoft Access中发送报告

VBA电子邮件循环以在Microsoft Access中发送报告,vba,loops,email,ms-access,ms-access-2010,Vba,Loops,Email,Ms Access,Ms Access 2010,请帮帮我,我已经为此挣扎了一个星期了 我在Microsoft Access中运行了一个报告,我正在尝试创建一个按钮,该按钮将向8个不同的人发送8个报告,而无需单击“发送”(或编辑消息)。 我从一个查询中创建了一个表单,其中包含我在代码中引用的8个引用(ADC)和电子邮件地址,我已将其附在下面。 我现在的主要问题是: 当我在DoCmd中输入“False”时,它仍在打开要编辑的消息 将相应的ADC报告链接到正确的电子邮件 你有没有试过下面的方法,并把它放在一个循环中?这也会在不打开outlook编辑

请帮帮我,我已经为此挣扎了一个星期了

我在Microsoft Access中运行了一个报告,我正在尝试创建一个按钮,该按钮将向8个不同的人发送8个报告,而无需单击“发送”(或编辑消息)。 我从一个查询中创建了一个表单,其中包含我在代码中引用的8个引用(ADC)和电子邮件地址,我已将其附在下面。 我现在的主要问题是:

  • 当我在DoCmd中输入“False”时,它仍在打开要编辑的消息
  • 将相应的ADC报告链接到正确的电子邮件

  • 你有没有试过下面的方法,并把它放在一个循环中?这也会在不打开outlook编辑器的情况下发送电子邮件:

    ''''''''''''''
    ' Send Email '
    ''''''''''''''
    
    email = User & "@123.com"
    strItem = "http://schemas.microsoft.com/cdo/configuration/"
    strFrom = "TestEmail@email.com"
    strCC = ""
    
    Set objOutlook = CreateObject("Outlook.Application")
    Set objEmail = CreateObject("CDO.Message")
    
    With objEmail
        .To = email
        .From = strFrom
        .CC = strCC
        .Subject = "Report Confirmation"
        .textbody = "Hi " & FirstName & vbNewLine & vbNewLine _
                    "Your Voice!" & vbNewLine & vbNewLine
    
    With .Configuration.Fields
            .Item(strItem & "sendusing") = 2
            .Item(strItem & "smtpserver") = "mailhost"
            .Item(strItem & "smtpserverport") = 25
            .Update
        End With
        .Send
    End With
    
    Set objEmail = Nothing
    Set objOutlook = Nothing
    

    我无法复制你的问题。我的电子邮件发送时不打开Outlook编辑器。然而,我确实得到了一个警告弹出窗口。查看Outlook信任中心>编程访问设置。感谢您的帮助@6月7日在编程访问设置中,它不允许我更改设置,当前设置为“当我的防病毒软件处于非活动状态或过期时警告我可疑活动(推荐)”。你还有其他建议吗?
    ''''''''''''''
    ' Send Email '
    ''''''''''''''
    
    email = User & "@123.com"
    strItem = "http://schemas.microsoft.com/cdo/configuration/"
    strFrom = "TestEmail@email.com"
    strCC = ""
    
    Set objOutlook = CreateObject("Outlook.Application")
    Set objEmail = CreateObject("CDO.Message")
    
    With objEmail
        .To = email
        .From = strFrom
        .CC = strCC
        .Subject = "Report Confirmation"
        .textbody = "Hi " & FirstName & vbNewLine & vbNewLine _
                    "Your Voice!" & vbNewLine & vbNewLine
    
    With .Configuration.Fields
            .Item(strItem & "sendusing") = 2
            .Item(strItem & "smtpserver") = "mailhost"
            .Item(strItem & "smtpserverport") = 25
            .Update
        End With
        .Send
    End With
    
    Set objEmail = Nothing
    Set objOutlook = Nothing