设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

12
返回列表 发新帖
楼主: weiw3
打印 上一主题 下一主题

[查询] [求助]请问如何向查询结果里所有有Email地址的客户发Email

[复制链接]
11#
 楼主| 发表于 2006-6-16 02:14:00 | 只看该作者
郁闷啊!我的Access看不到中文的。
12#
 楼主| 发表于 2006-6-16 05:56:00 | 只看该作者
我按照4楼提供的语句新建了一个Module,可以运行,但是就是不知道怎么把收信人的那个选项改成我的数据库里搜索结果的email地址,进行群发。控制收信人的那个语句是

' Add the To recipient(s) to the message.
     Set objOutlookRecip = .Recipients.Add("Nancy Davolio")
      objOutlookRecip.Type = olBCC

那个括号里的"Nancy Davolio"一定要输入的,不能空。但是我想把我的查询结果里的Email地址输出到这里。

还有就是标题和内容,我怎么样才能使用指定的一个模板样式呢?语句是

' Set the Subject, Body, and Importance of the message.
      .Subject = "Test"
      .Body = "Testing." & vbCrLf & vbCrLf

在这里这个.Subject=和.Body=后面应该怎么写,或用什么别的语句?

最后一个问题就是,如果上面的这些功能都实现以后,我可以在我的查询表格里建一个键,直接启动这个Module吗?

多谢了!!!

[此贴子已经被作者于2006-6-15 21:59:09编辑过]

13#
发表于 2006-6-16 06:13:00 | 只看该作者
那需要涉及到ADO,通过建立记录集,然后循环发邮件就可以了 。

下面是通过Outlook发送邮件,需要对Outlook做正确的配置才能发送。

Dim olApp As Outlook.Application
Dim myMail As MailItem

    Set olApp = Outlook.Application
    Set myMail = olApp.CreateItem(olMailItem)
    With myMail
        .Recipients.Add ("收件人地址")
        .CC ="抄送地址"
        .BCC = "秘密抄送地址"
        .Subject = "主题"
        .Body = "正文"
        .Attachments.Add ("附件地址")
        .Save
        .Send
    End With

将上面引号中的内容更换成你的内容就可以了。


[此贴子已经被作者于2006-6-15 22:36:41编辑过]

14#
 楼主| 发表于 2006-6-17 00:15:00 | 只看该作者
版主,记录集怎么建啊?是不是把我查询结果里的Email地址生成一个文件啊?

还是你在上面说的把引号中的内容换成我的内容,我的内容是指在我的数据库里查询结果里的Email地址位置是吗?比如说,我的查询结果是在 Query.Product Query的Email字段里,那我在引号里就填 Query_Product Query_Email,对吗?

谢了!

[此贴子已经被作者于2006-6-16 16:28:47编辑过]

15#
发表于 2006-6-17 04:16:00 | 只看该作者
看来你需要对ADO有一些了解才行啊,以下是建立记录集的典型代码

Dim conn As New ADODB.Connection
Dim rsTemp As New Recordset
Dim strSQL As String


   Set conn = CurrentProject.Connection


   strSQL = "SELECT * FROM 表1;"
   rsTemp.Open strSQL, conn, adOpenKeyset, adLockOptimistic


通过上面用ADO建立的记录集rsTemp后,就可以使用rsTemp("字段名称")获得表1中的记录了。

在通过循环记录集中的记录就可以实现群发了。

Dim olApp As Outlook.Application
Dim myMail As MailItem

    Set olApp = Outlook.Application
    Set myMail = olApp.CreateItem(olMailItem)

Do While Not rsTemp.EOF
    With myMail
        .Recipients.Add  rsTemp("收件人地址")
        .CC =rsTemp("抄送地址")
        .BCC = rsTemp("收件人地址")
        .Subject = rsTemp("主题")
        .Body = rsTemp("正文")
        .Attachments.Add rsTemp("附件地址")
        '.Save
        .Send
    End With
         rsTemp.MoveNext
   Loop

最后关闭记录集,释放变量

   rsTemp.Close
    Set rsTemp = Nothing
    Set conn = Nothing



[此贴子已经被作者于2006-6-16 20:22:24编辑过]

16#
 楼主| 发表于 2006-6-17 05:33:00 | 只看该作者
呵呵,我其实是从零开始啊!现在正在看关于ADO的帮助文件。还是不懂的话就又要劳烦版主了[em10]
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-11-15 22:30 , Processed in 0.081326 second(s), 29 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表