ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
查看: 8757|回复: 10

[求助] OUTLOOK中如何用代码获取到发件人地址

[复制链接]

TA的精华主题

TA的得分主题

发表于 2009-4-27 14:48 | 显示全部楼层 |阅读模式
想在OUTLOOK中加个宏,大概作用是:获取收件箱中到所有的邮件发件人地址?
不知道有哪位朋友写过相关代码,请给予提示,非常感谢!

TA的精华主题

TA的得分主题

 楼主| 发表于 2009-4-28 10:40 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
人气不旺啊!

TA的精华主题

TA的得分主题

发表于 2009-5-9 19:54 | 显示全部楼层
一个一个显示发件人地址,呵呵.

Sub GetSenderAddress()
Dim myOlApp As New Outlook.Application
Dim mynamespace As Outlook.NameSpace
Dim myfolder As Outlook.Folder

Set mynamespace = myOlApp.GetNamespace("MAPI")
Set myfolder = mynamespace.GetDefaultFolder(olFolderInbox)
For Each mail In myfolder.Items

     MsgBox (mail.SenderEmailAddress)

Next

Set myfolder = Nothing
Set mynamespace = Nothing


End Sub

[ 本帖最后由 aaaaabbbbb 于 2009-5-9 19:56 编辑 ]

TA的精华主题

TA的得分主题

发表于 2009-10-16 16:54 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
批量获取地址到地址簿呢?

TA的精华主题

TA的得分主题

发表于 2009-10-27 13:11 | 显示全部楼层
Sub GetSender()
'按照邮件接收日期由最近到最早的顺序显示发件人邮箱:
Dim myOlApp As Outlook.Application
Dim mpfInbox As Outlook.MAPIFolder
Dim obj As Outlook.MailItem
Dim myexApp As Excel.Application
Dim i As Integer

Set myOlApp = CreateObject("Outlook.Application")
Set mpfInbox = myOlApp.GetNamespace("MAPI").GetDefaultFolder(olFolderInbox)

Workbooks("Book1.xls").Worksheets("Sheet1").Select

For i = mpfInbox.Items.Count To 1 Step -1
  If mpfInbox.Items(i).Class = olMail Then
    Set obj = mpfInbox.Items.Item(i)
    Cells(i, 1) = obj.SenderEmailAddress
  End If
  
Next i

End Sub

TA的精华主题

TA的得分主题

发表于 2011-11-3 10:00 | 显示全部楼层
lgcmeli 发表于 2009-10-27 13:11
Sub GetSender()
'按照邮件接收日期由最近到最早的顺序显示发件人邮箱:
Dim myOlApp As Outlook.Applica ...

你的QQ多少

TA的精华主题

TA的得分主题

发表于 2014-4-18 16:55 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
本帖最后由 H若君E 于 2014-4-18 16:57 编辑
lgcmeli 发表于 2009-10-27 13:11
Sub GetSender()
'按照邮件接收日期由最近到最早的顺序显示发件人邮箱:
Dim myOlApp As Outlook.Applica ...

请教下,如果收件箱有分文件夹,比如文件夹名字为“2014”,

想获取收件箱中2014的文件夹中 邮件收件人地址和收件时间到当前EXCEL工作表中(不需要新建工作表),应该怎么修改呢?


TA的精华主题

TA的得分主题

发表于 2014-4-20 16:23 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
H若君E 发表于 2014-4-18 16:55
请教下,如果收件箱有分文件夹,比如文件夹名字为“2014”,

想获取收件箱中2014的文件夹中 邮件收件人 ...

可以啊  联系我  你有我的的QQ 号

TA的精华主题

TA的得分主题

发表于 2014-5-29 07:11 | 显示全部楼层
yanfeiliuhen 发表于 2014-5-28 23:08
lgcmeli 你好,请问下 我放到outlook vbe里运行时,提示这行Workbooks("Book1.xls").Worksheets("Sheet1"). ...

这个是已经打开这个文件的

可以改一下 set mywb = workbooks.open(“Book1.xls”)

mywb.worksheets("sheet1").sheet

TA的精华主题

TA的得分主题

发表于 2014-5-28 23:08 | 显示全部楼层
lgcmeli 你好,请问下 我放到outlook vbe里运行时,提示这行Workbooks("Book1.xls").Worksheets("Sheet1").Select 下标越界,,,调试时把箭头指向workbooks(...,,,,,,这是为什么啊  是不是Book1.xls文件要放到指定的地方(如放在E目录下)
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2025-1-9 17:13 , Processed in 0.059963 second(s), 9 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

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