Access交流网
  • 设为首页|收藏本站|繁体中文|手机版
  •     
  • Access培训-Access开发平台-Access行业开发

  • 首页
  • 资讯
  • 技巧
  • 源码
  • 行业
  • 资源
  • 产品
  • 活动
  • 培训
  • 招聘
  • 论坛
  • 商城
  • 关于

培训

Access企业培训(现场)
Access在线培训

Access中级培训

Access高级培训

Access定制培训

Access树控件与BOM高级技巧

Access公开课
Access免费公开课视频
Access培训(VIP)
Access培训优惠信息

热门文章

  • Access控制outlo..
  • Access智能搜索组合框..
  • Access系统设置及系统..
  • Access自动执行宏的妙..
  • 数据自动导出多个Excel..
  • Access专业工资条打印..

最新文章

  • Access自动播音员-A..
  • Access智能搜索组合框..
  • Access自动执行宏的妙..
  • access图片分页展示及..
  • 通用读取文本文件模块-Ac..
  • Access通用TAB键和..

联系方式

Access交流网

电  话:0760-88315075
热  线:0760-88315075

邮  编:528463
咨询QQ:1918333016
营销QQ:4008553990

Email:1918333016@qq.com

网  址:www.access-cn.com

当前位置:首页 > 培训 > Access培训(VIP)
Access培训(VIP)

Access控制outlook自动处理邮件-Access经典源码剖析

 
Access主题 主题:Access控制outlook自动处理邮件-高手之路                  听课人数:112人      
Access主讲 主讲:王宇虹                       演讲时间:2014-11-19 15:30 至 2014-11-19 16:30
Access培训内容 讲课内容简介:                   Access培训报名: http://www.office-cn.net/thread-118946-1-1.html
  讲解如何Access与outlook交互,access如何控制outlook发送邮件(添加附件),自动回复邮件,查看邮件列表等内容。在access中,outlook可以非常灵活地做出各种动作。
 培训优势:使用新版Access2013+思维导图模式+Access源码剖析+在线课堂+PPT课件  培训
 培训目标:让你 听得懂 学得会 记得住 用得上             要求:有一定的Access 或 VBA的基础 
 

 

clip0058

Access控制outlook自动处理邮件


 

 

application_key 功能描述:

 

  • Access控制outlook创建电子邮件

  • Access控制outlook发送邮件

  • 用自定义操作回复新的电子邮件

  • 访问未读所有邮件

  • 根据用户名自动分发邮件

 

 

application_key  行业应用场景:

 
  •   客户产品信息反馈

  •   员工信息通知

  •   定期自动回访客户

  •   自动添加附件

 

application_key  界面预览:

 

     access数据库

     access数据库

 

application_key  源码思维导图(脑图):

 

     access数据库

 

Access教程视频Access控制outlook自动处理邮件 -- Access经典源码剖析思维导图在线播放

可直接展开和收缩思维导图中的每个节点来浏览,也可使用下面的放大 缩小 折叠 定位焦点 全页显示 查找关键字等功能
 

 

 

application_key  Access培训笔记:

 

  个人ERP 人脉管理-邮件功能 Office中国 (讲师:王宇虹)

1 效果展示

2 用途

3 循序渐进

3.1 定位收件箱

3.1.1 Set myFolder = myNamespace.GetDefaultFolder(olFolderInbox)

3.2 取收件箱里面所有的邮件项集合

3.2.1 Set myItems = myNewFolder.Items

3.3 筛选符合日期范围的邮件

3.3.1 Set myrestrictItems = myItems.Restrict(cFilter)

3.3.1.1 "[ReceivedTime] > '" & datStart & " AM 00:00:00" & "' And [ReceivedTime] < '" & datEnd & " AM 00:00:00" & "'"

3.4 循环每一封邮件

3.4.1 For Each newItem In myrestrictItems

3.4.2 取每封邮件的标题

3.4.2.1 cSubject = newItem.Subject

3.4.3 循环所有收件者

3.4.3.1 For Each myRecpt In newItem.Recipients

3.4.4 通过代码来组合 新邮件的内容

3.4.4.1 包含了接收到的邮件的标题 发件人 发送时间

3.4.4.2 再加上自定义的一些文字

3.4.5 创建新邮件

3.4.5.1 Set toHk = myOlApp.CreateItem(olMailItem)

3.4.6 先创建标题行

3.4.6.1 发件人          寄件时间                主  旨

3.4.7 用代码自动填写标题与邮件内容

3.4.7.1 主题

3.4.7.1.1 "寄给" + cname + "----" + msubject

3.4.7.2 内容

3.4.7.2.1 toHk.Body = mbody + myArray(3, I) + mBody1 + mBody2

3.4.8 显示或发送邮件

3.4.8.1 toHk.Display

3.4.8.2 toHk.Send

3.5 移动邮件到指定的文件夹

3.5.1 Set myDesFolder = myNewFolder.Folders("重要客户")

3.5.2 myNewFolder.Items(1).Move myDesFolder

3.5.3 myDesFolder.Display

4 access数据库 知识点

4.1 OUTLOOK

4.1.1 MAPI

4.1.1.1 Application

Application 对象表示 Outlook 应用程序,它是 Outlook 对象模型中最高级的对象。 此对象的一些最重要的成员包括:

CreateItem 方法,该方法可用来创建新项,例如电子邮件、任务或约会。

Explorers 属性,该属性可用来访问在 Outlook 用户界面 (UI) 中显示文件夹内容的窗口。

Inspectors 属性,该属性可用来访问显示单个项(如电子邮件或会议要求)内容的窗口。

4.1.1.2 Explorer

Explorer 对象

Explorer 对象表示显示包含项(如电子邮件、任务或约会)的文件夹内容的窗口。 Explorer 对象包括可用来修改窗口的方法和属性,以及窗口更改时所引发的事件。

若要获取 Explorer 对象,请执行下列操作之一:

使用 Application 对象的 Explorers 属性访问 Outlook 中的所有 Explorer 对象。

使用 Application 对象的 ActiveExplorer 方法获取当前具有焦点的 Explorer。

使用 MAPIFolder 对象的 GetExplorer 方法获取当前文件夹的 Explorer

4.1.1.3 Inspector

Inspector 对象

Inspector 对象表示显示单个项(如电子邮件、任务或约会)的窗口。 Inspector 对象包括可用来修改窗口的方法和属性,以及窗口更改时所引发的事件。

若要获取 Inspector 对象,请执行下列操作之一:

使用 Application 对象的 Inspectors 属性访问 Outlook 中的所有 Inspector 对象。

使用 Application 对象的 ActiveInspector 方法获取当前具有焦点的 Inspector。

使用特定项(如 MailItem 或 AppointmentItem)的 GetInspector 方法检索与其关联的 Inspector。

4.1.1.4 MAPIFolder

MAPIFolder 对象

MAPIFolder 对象表示包含电子邮件、联系人、任务及其他项的文件夹。 Outlook 提供 16 个默认 MAPIFolder 对象。

默认 MAPIFolder 对象由 OlDefaultFolders 枚举值定义。 例如,

Microsoft.Office.Interop.Outlook.OlDefaultFolders.olFolderInbox 与 Outlook 中的“收件箱”文件夹相对应

4.1.1.4.1 文件夹

4.1.1.4.1.1 收件夹

4.1.1.4.1.2 发件箱

4.1.1.4.1.3 已发件

4.1.1.5 MailItem

MailItem 对象

MailItem 对象表示电子邮件。 MailItem 对象通常在“收件箱”、“已发送邮件”和“发件箱”等文件夹中。 MailItem 公开可用于创建和发送电子邮件的属性和方法。

4.1.1.5.1 创建电子邮件。

4.1.1.5.1.1 如何:以编程方式创建电子邮件项

4.1.1.5.2 发送电子邮件。

4.1.1.5.2.1 如何:以编程方式发送电子邮件

4.1.1.5.3 用自定义操作回复新电子邮件。

4.1.1.5.3.1 如何:以编程方式在收到电子邮件后执行操作

4.1.1.5.4 保存附件。

4.1.1.5.4.1 如何:以编程方式保存 Outlook 电子邮件项的附件

4.1.1.5.5 添加附件

4.1.1.5.5.1 如何:以编程方式将文件附加到 Outlook 电子邮件项

4.1.1.5.6 循环访问所有未读邮件。

4.1.1.5.6.1 如何:以编程方式检索收件箱中的未读邮件

4.1.1.6 AppointmentItem

AppointmentItem 对象表示“日历”文件夹中的会议、一次性约会,或定期约会或会议。 AppointmentItem 对象包括执行操作(如响应或转发会议要求)的方法,以及指定会议详细信息(如位置和时间)的属性

4.1.1.7 TaskItem

TaskItem 对象表示要在指定的时间范围内执行的任务。 TaskItem 对象位于“任务”文件夹中。

4.1.1.8 ContactItem

ContactItem 对象表示在 联系人 文件夹中的联系人。 ContactItem 对象包含它们所表示的人的各种联系信息,如街道地址、电子邮件地址和电话号码。

4.1.2 总图

4.1.2.1

4.1.3 常见用法

4.1.3.1 ActiveExplorer()

4.1.3.1.1 这些方法分别从当前 Outlook 实例检索 Explorer / Inspector 类型。本文随后描述资源管理器/检查器模型。

4.1.3.2 ActiveInspector()

4.1.3.3 CreateItem()

4.1.3.3.1 允许通过编程创建新的 Outlook 项。

4.1.3.4 GetNamespace()

4.1.3.4.1 提供对数据存储项的访问。到 Outlook 2003 为止,MAPI 是唯一可以使用的命名空间,它用于访问 Outlook 文件夹组(收件箱、注释等)。

4.1.3.5 Quit()

4.1.3.5.1 终止当前 Outlook 会话。

4.1.3.6 COMAddIns

4.1.3.6.1 该属性允许您在运行时发现插入到当前 Outlook 实例中的外接程序集合。

4.1.3.7 Explorers

4.1.3.7.1 这些属性允许获得强类型的 Explorers/Inspectors 集合。

4.1.3.8 Inspectors

4.1.4 常用变量

4.1.4.1 OlItemType

OlItemType 枚举值 所产生的类型 基本含义

olAppointmentItem

 

AppointmentItem

 

表示单个约会。

 

olContactItem

 

ContactItem

 

表示单个联系人。

 

olDistributionListItem

 

DistributionListItem

 

表示一个通讯组列表。

 

olJournalItem

 

JournalItem

 

表示单个日记项。

 

olMailItem

 

MailItem

 

表示单个电子邮件项。

 

olNoteItem

 

NoteItem

 

表示单个注释。

 

olPostItem

 

PostItem

 

表示其他人可能浏览的公用文件夹中的公告。

 

olTaskItem

 

TaskItem

 

表示单个任务。

4.1.4.2 olFolder

4.1.4.2.1 olFolderCalendar = 9;

4.1.4.2.1.1 日历

4.1.4.2.2 olFolderConflicts = 19;

4.1.4.2.3 olFolderContacts = 10;

4.1.4.2.3.1 联系人

4.1.4.2.4 olFolderDeletedItems = 3;

4.1.4.2.5 olFolderDrafts = 16;

4.1.4.2.6 olFolderInbox = 6;

4.1.4.2.6.1 收件夹

4.1.4.2.7 olFolderJournal = 11;

4.1.4.2.8 olFolderJunk = 23;

4.1.4.2.9 olFolderLocalFailures = 21;

4.1.4.2.10 olFolderNotes = 12;

4.1.4.2.11 olFolderOutbox = 4;

4.1.4.2.11.1 发件箱

4.1.4.2.12 olFolderSentMail = 5;

4.1.4.2.12.1 已发送

4.1.4.2.13 olFolderServerFailures = 22;

4.1.4.2.14 olFolderSyncIssues = 20;

4.1.4.2.15 olFolderTasks = 13;

4.1.4.2.16 olPublicFoldersAllPublicFolders = 18;

 

 

 

application_key  相关链接:

 

1. 直接超值购买:

       点击购买:  Button 

       包含:Access示例完整源码+实现思路与代码讲解高清视频+Access培训课件    绝对低价超值

 

2. 购买前咨询:

    

    在线咨询QQ:1918333016

    企业热线QQ:4008553990 (使用QQ搜索: 搜索服务)

    更多联系方式:http://www.office-cn.net/t/training/officecontact.htm

 

application_key  部分源码预览:

 

  access数据库

 

Option Compare Database
Option Explicit
 
Private Sub cmdSend_Click()
Dim Subject As String
Dim SendTo As String
Dim Body As String
Dim Attachment As String
 
Subject = "测试"
SendTo = "brandsex@111.com"
Body = "这是一个测试"
Attachment = CurrentProject.Path & "\ZUpdate.dat"
Dim Outlook As Variant
Dim item As MailItem 'Variant  'Dim item As MailItem
Set Outlook = CreateObject("Outlook.Application")
Set item = Outlook.CreateItem(0)
'item.Recipients.item(0).Name = "王先生"
'item.Recipients.item(0).Address = SendTo
item.Subject = Subject
'item.SenderName = "tmtony"
'item.Sender = "tmtony@21cn.com)"
'item.To = SendTo
'........................
'........................
 
'item.Send
'
'If pDateFrom = pDateTo Then
'           msubject = Format(pDateFrom, "mm/dd/yyyy") & " " & pListSubject
'           cmainsubject = Format(pDateFrom, "mm/dd/yyyy") & " " & pListSubject
'        Else
'            msubject = Format(pDateFrom, "mm/dd/yyyy") & " 至 " & Format(pDateTo, "mm/dd/yyyy") & " " & pListSubject
'            cmainsubject = Format(pDateFrom, "mm/dd/yyyy") & " 至 " & Format(pDateTo, "mm/dd/yyyy") & " " & pListSubject
'        End If
 
'        mBody2 = mBody2 & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & "此清单由程序自动生成" & vbCrLf
'        mBody2 = mBody2 & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & "编制者:王宇虹" & vbCrLf
'        mBody2 = mBody2 & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & "此清单生成时间:" & Date & Time() & vbCrLf
 
'cFilter = "[ReceivedTime]>'10/23/98' and [ReceivedTime]<'10/24/98'"
'
'Set myFolder = myNamespace.GetDefaultFolder(olFolderInbox)
'        'Set mm = myNamespace.folders("个人资料夹")
'        'Set mm = myNamespace.Folders(2)
'     '   Set mmsub = myNamespace.Folders("old")
'      '  Set mytest = mmsub.Folders("TEST")
'        Set myNewFolder = myNamespace.GetFolderFromID(GEntryId, GStoreId)
'       ' myNewFolder.Display
'
'        Set myItems = myNewFolder.Items
'
'       ' Set myRestrictitems = myItems.Restrict("[Subject] ='安全选项卡'")
'       Set myrestrictItems = myItems.Restrict(cFilter)
 
End Sub
 
Private Sub cmdSendEmail_Click()
'普适性
Dim olkApp As Object  '定义OUTLOOK对象变量
Set olkApp = CreateObject("Outlook.Application")
Dim itmMail As MailItem '定义一下邮件项
 
Dim rs As Object
Dim intCnt As Long '记录发送邮件的总数
Set rs = CreateObject("adodb.recordset")
rs.Open "Select * from tblContactTest", CurrentProject.Connection, 3, 1
  
'循环人脉表中所有的人脉
Do While Not rs.EOF
 
    
   '........................
   '........................
 
        '个性化服务 私人定制 靶向销售
         
        .Display '.Display '.Send   '.Display
        intCnt = intCnt + 1
      End If
    End With
    rs.movenext
Loop
rs.Close
Set rs = Nothing
 
'gf_msgbox "共成功发送" & intCnt & "封邮件!"
 
'item.SenderName = "tmtony"
'item.Sender = "tmtony@21cn.com)"
'item.To = SendTo
 
'item.Attachments.Add Attachment
 
 
 
 
End Sub
 
Private Sub cmdTest_Click()
     
    Dim olApp As New Outlook.Application
    Dim nmsName As Outlook.NameSpace
    Dim myFolder As Object
    '........................
    '........................
 
    Set myFolder = nmsName.GetDefaultFolder(6) 'olFolderInbox
   ' Set fldFolder = myFolder.Folders("For Download")
        
    '........................
    '........................
 
    
    Set myFolder = Nothing
    Set nmsName = Nothing
End Sub
 
Private Function PrnSendList() As Boolean
On Error GoTo myerror
Dim myFolder As Object
Dim myNewFolder As Object
Dim myItems As Object
Dim myrestrictItems As Object
Dim newItem As Object
Dim myRecpt As Object
Dim toHk As Object
 
Dim myDesFolder As Object
 
Dim msubject As String
Dim mbody As String
Dim cmainsubject As String
Dim cAddress As String
Dim cAddrLst As String
Dim cSubject As String
Dim cAddr As String
Dim cname As String
Dim csendername As String
Dim mBody1 As String
Dim mBody2 As String
 
 
Dim nP As Integer
Dim mPos As Integer
 
Dim I As Long
Dim J As Long
Dim L As Long
Dim mstart As Integer
 
Dim myOlApp As Object  'Outlook.Application 定义OUTLOOK对象变量
Dim myNamespace As Object ' Outlook.NameSpace
Set myOlApp = CreateObject("Outlook.Application")
Set myNamespace = myOlApp.GetNamespace("MAPI")
 
 
 
    DoCmd.Hourglass True
    Dim pListName As String
    Dim pDateFrom As Date
    Dim pDateTo As Date
    Dim pLogic As String
    Dim pFromFolder As String
    Dim pReceipt As String
    Dim pAutoPrntList As Boolean
    Dim pSendList As Boolean
    Dim pAutoSendList As Boolean
    Dim pListSubject As String
    Dim pEntryId As String
    Dim pStoreId As String
    
    Dim cFilter As String
 
    Dim datStart As Date
    Dim datEnd As Date
    datStart = #11/1/2014#
    datEnd = Date
    '筛选的条件
   '........................
   '........................
 
        
        
        mbody = mbody & cmainsubject & vbCrLf & vbCrLf
        mbody = mbody & "发件人" & vbTab & vbTab & "寄件时间" & vbTab & vbTab & "主  旨" & vbCrLf
        mbody = mbody & "------------------------------------------------------------------------------------------------------" & vbCrLf
        I = 0
 
        Dim myArray(4, 20)
        cAddress = ""
        cAddrLst = ""
        J = 0
        L = 0
        '........................
        '........................
 
                        Else
                            mstart = Val(Mid(cAddrLst, mPos - 1, 1))
                          '  MsgBox "aa" + mstart
                            csendername = LeftB(newItem.SenderName, 28)
                            myArray(3, mstart) = myArray(3, mstart) & csendername & Space(30 - LenB(StrConv(csendername, vbFromUnicode))) & vbTab & Format(newItem.SentOn, "mm/dd h:m") & vbTab & cSubject & vbCrLf
                            myArray(2, mstart) = myArray(2, mstart) + 1
                        End If
                   ' End If
                Next
'            tohk.body = tohk.body & csendername & Space(30 - LenB(StrConv(csendername, vbFromUnicode))) & vbTab & Format(newItem.SentOn, "mm/dd h:m") & vbTab & csubject & vbCrLf
'             i = i + 1
             
'             If i = 300 Then
'                If MsgBox("邮件数目超过300条,是否继续处理?", vbExclamation + vbOKCancel, "警告") = vbCancel Then
'                   Exit Function
'                End If
'             End If
                   
                
'            myItem.Move myFolder.Folders("Project X")
        Next
 
        mBody2 = mBody2 & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & "此清单由程序自动生成" & vbCrLf
        mBody2 = mBody2 & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & "编制者:王宇虹" & vbCrLf
        mBody2 = mBody2 & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & "此清单生成时间:" & Now() & vbCrLf
         '........................
         '........................
 
         mBody1 = mBody1 & "请注意: 日期为01/01, 则可能是未传通的!!" & vbCrLf & vbCrLf & vbCrLf
         mBody1 = mBody1 & "请查阅有否遗漏,如有请尽快通知我,以便及时补回!!" & vbCrLf & vbCrLf & vbCrLf
        End If
            
            
            toHk.Subject = "寄给" + cname + "----" + msubject
            toHk.Body = mbody + myArray(3, I) + mBody1 + mBody2
            toHk.Recipients.Add myArray(1, I)
 
 
                toHk.Display  'toHk.PrintOut  toHk.Send
 
        End If
       Next I
 
  '  Me.Hide
     PrnSendList = True
     Exit Function
myerror:
'     MsgBox "工作排程--[" & cListName & "]在" & Date & Time & "运行时出错" & vbCrLf & "可能是清单的收件者地址有错,请改正."
     lblError.Caption = "工作排程--[" & "test" & "]" & Date & Time & "出错"
     ' & "可能是清单的收件者地址有错,请改正."
     PrnSendList = False
     DoCmd.Hourglass False
     Resume Next
End Function
 
Private Sub Command3_Click()
PrnSendList
End Sub
 

 

发布人:zstmtony  
分享到:
点击次数:  更新时间:2018-02-28 11:09:08  【打印此页】  【关闭】
上一条:网站数据提取与采集-Access经典源码剖析  下一条:VBA开发神器发布及培训--完全颠覆Access VBA的开发方式--平台插件VBA伴侣-Access经典源码剖析



相关文章

  • • Access自动播音员-Access经典源码剖析
  • • Access智能搜索组合框-Access经典源码剖析
  • • Access自动执行宏的妙用-Access经典源码剖析
  • • access图片分页展示及选择功能-Access经典源码剖析
  • • 通用读取文本文件模块-Access经典源码剖析
  • • Access通用TAB键和默认值设置-Access经典源码剖析
  • • access图片文件保存到数据库的通用技巧-Access经典源码剖析
  • • 数据自动导出多个Excel或者多个工作表-Access经典源码剖析

热门文章

  • [2018-02-28] Access通用TAB键和默认值设置-Access经典源码剖析access数据库
  • [2018-02-28] Access多层架构开发思路-Access经典源码剖析access数据库
  • [2018-02-28] Access调用网页功能-版本自动更新-Access经典源码剖析access数据库
  • [2018-02-28] Access系统设置及系统函数的应用-Access经典源码剖析access数据库
  • [2018-02-28] Access列表框的高级应用-Access经典源码剖析access数据库
  • [2018-02-28] 通用读取文本文件模块-Access经典源码剖析access数据库

热门产品

  1. 短信专家接口(可用于企业及个人多种短信用途)

    短信专家接口(可用于企业及个人多种短信用途)

  2. Access通用开发平台

    Access通用开发平台

  3. 电子厂管理软件系统

    电子厂管理软件系统

公司动态|在线留言|在线反馈|联系我们|友情链接|会员中心|站内搜索|网站地图

中山市天鸣科技发展有限公司 版权所有 1999-2018 粤ICP备10043721号

广东省中山市西苑广场富贵阁20楼A座

电话:0760-88315075 手机:13928102596 QQ:1918333016

Access应用 Access培训 Access开发 Access平台

access|数据库|access下载|access教程|access视频|access软件

Powered by MetInfo 5.3.12 ©2008-2022  www.metinfo.cn