Office及VBA技术交流

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 1756|回复: 0

Excel VBA 使用别的邮件帐户来发送邮件

[复制链接]

该用户从未签到

55

主题

83

帖子

259

积分

中级会员

Rank: 3Rank: 3

积分
259
发表于 2016-1-15 17:48:50 | 显示全部楼层 |阅读模式
本帖最后由 平平 于 2016-1-15 17:54 编辑

转载请注明

转自:officemaster.cn

当您使用Outlook作为邮件程序此页面上的代码是唯一的工作。复制代码在您的工作簿的标准模块,如果你刚开始使用VBA看到这个页面。更改发件人的姓名和回复地址最简单的方法是添加该代码行“接收器可以看到原来的邮箱地址中的属性,如果他想
  1. .SentOnBehalfOfName = "xxx@xxx.com"
复制代码
使用SendUsingAccount在Excel / Outlook 2007或更高如果你想从另一个帐户的邮件,然后在Outlook 2007-2016默认邮件帐户,那么你可以使用SendUsingAccount ,这是添加到Outlook 2007对象模型。首先在Excel工作簿中添加一个引用到Microsoft Outlook的库1 )进入VBA编辑器, Alt键-F112 )工具>在菜单栏引用3)将微软Outlook之前勾选?对象库    ?是Outlook版本号首先,我们必须知道,我们要使用的帐号。下方运行,所以你知道,你必须在邮件宏使用的帐户数量的宏。
  1. Sub Which_Account_Number()
  2. 'Don't forget to set a reference to Outlook in the VBA editor
  3.     Dim OutApp As Outlook.Application
  4.     Dim I As Long

  5.     Set OutApp = CreateObject("Outlook.Application")

  6.     For I = 1 To OutApp.Session.Accounts.Count
  7.         MsgBox OutApp.Session.Accounts.Item(I) & " : This is account number " & I
  8.     Next I
  9. End Sub
复制代码
现在你知道你要使的邮箱帐户了。在运行之前更改了邮件地址item(1)。
  1. Sub Mail_small_Text_Change_Account()
  2. 'Only working in Office 2007-2016
  3. 'Don't forget to set a reference to Outlook in the VBA editor
  4.     Dim OutApp As Outlook.Application
  5.     Dim OutMail As Outlook.MailItem
  6.     Dim strbody As String

  7.     Set OutApp = CreateObject("Outlook.Application")
  8.     Set OutMail = OutApp.CreateItem(olMailItem)

  9.     strbody = "Hi there" & vbNewLine & vbNewLine & _
  10.               "This is line 1" & vbNewLine & _
  11.               "This is line 2" & vbNewLine & _
  12.               "This is line 3" & vbNewLine & _
  13.               "This is line 4"

  14.     On Error Resume Next
  15.     With OutMail
  16.         .To = "ron@debruin.nl"
  17.         .CC = ""
  18.         .BCC = ""
  19.         .Subject = "This is the Subject line"
  20.         .Body = strbody

  21.         'SendUsingAccount is new in Office 2007
  22.         'Change Item(1)to the account number that you want to use
  23.         .SendUsingAccount = OutApp.Session.Accounts.Item(1)

  24.         .Send   'or use .Display
  25.     End With
  26.     On Error GoTo 0

  27.     Set OutMail = Nothing
  28.     Set OutApp = Nothing
  29. End Sub
复制代码
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|Office Master ( 蜀ICP备16003423号 )

GMT+8, 2019-7-18 12:56 , Processed in 0.215932 second(s), 24 queries .

Office Master

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