ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

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

Help:发送有附件的电子邮件时碰到的问题

[复制链接]

TA的精华主题

TA的得分主题

 楼主| 发表于 2006-3-2 15:53 | 显示全部楼层

试了,效果不错.

TA的精华主题

TA的得分主题

 楼主| 发表于 2006-3-6 22:02 | 显示全部楼层

试验成功。但在WORD中发送100个邮件用了6分钟,300个邮件用了20分钟。

有没有方法加快运行速度?!

[em06]

TA的精华主题

TA的得分主题

 楼主| 发表于 2006-3-7 20:36 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
[em06]

TA的精华主题

TA的得分主题

发表于 2006-4-14 09:28 | 显示全部楼层

为了保证邮件正常发出,代码中多次使用DoEvents让出控制权,以便OUTLOOK发送邮件,试试减少DoEvents的数目,以保证能顺利发出邮件为界。此外,若还有其它进程在运行,程序不能及时收回控制权也是速度慢的原因,在发送邮件时尽量不要启动其它进程。这样修改之后,期望发送速度能有所改善,但不能期望太大。

我曾看到过邮件群发程序,通过MAPI直接发送,那是非常之快,与利用OUTLOOK发送邮件的速度有数量级的区别。若邮件发送量巨大,应通过MAPI直接发送。

TA的精华主题

TA的得分主题

发表于 2006-4-14 10:04 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助

准确地说,以上过程是邮件的产生过程,与收件人能否及时收到邮件,关系不大。

邮件能否及时到达收件人,取决于网络状况与邮件服务器的响应状况。网络状况的改善,涉及的因素较多。此外若邮件服务器对你的邮件不及时发送,延时较长,也会造成收件人不能及时收到邮件,对此可以利用本机WINDOWS XP的SMTP虚拟服务器直接发送邮件,而不是使用邮件服务器的SMTP发送,这对于邮件及时到达收件人和减少不能投递的邮件都有改善。

TA的精华主题

TA的得分主题

发表于 2006-4-14 11:15 | 显示全部楼层

求助

尊敬的大虾: 你好!根据你提供的代码,执行后在第40行出错,恳请百忙中予以指正。谢谢了! 运行时错误 ‘-1317797622 (b174010a)’: 方法 ’Display’作用于对象 ‘_MailItem’ 时失败 1. Sub send_mail() 2. Dim f(6), Str 3. Dim myOlApp As Object 4. Dim myitem As Object 5. Dim i As Integer 6. Windows("bwl.xls").Activate 7. Sheets("地区").Select 8. Range("B1").Select 9. i = 2 10. For i = 2 To 10 11. Set myOlApp = CreateObject("Outlook.Application") 12. Set myitem = myOlApp.CreateItem(olMailItem) 13. Str = Application.WorksheetFunction.trim(Cells(i, 9)) 14. f(1) = "c:\mail\发送\" & Cells(i, 2) & mid(Str, 2, 3) & ".xls" 15. f(2) = "c:\mail\发送\" & Cells(i, 2) & mid(Str, 2, 3) & "_li.xls" 16. f(3) = "c:\mail\发送\" & Cells(i, 2) & mid(Str, 2, 3) & "co.xls" 17. f(4) = "c:\mail\发送\" & Cells(i, 2) & mid(Str, 2, 3) & "co_li.xls" 18. f(5) = "c:\mail\发送\" & Cells(i, 2) & mid(Str, 2, 3) & "sa.xls" 19. f(6) = "c:\mail\发送\" & Cells(i, 2) & mid(Str, 2, 3) & "sa_li.xls" 20. With myitem 21. .To = Cells(i, 21) 22. '.Subject = Cells(i, 22) 23. '.Body = Cells(i, 23) 24. .Attachments.Add f(1) 25. .Attachments.Add f(2) 26. .Attachments.Add f(3) 27. .Attachments.Add f(4) 28. .Attachments.Add f(5) 29. .Attachments.Add f(6) 30. .Display 31. End With 32. On Error GoTo continue 33. SendEmail: 34. myitem.Display 35. DoEvents 36. DoEvents 37. DoEvents 38. SendKeys "^~", Wait:=True 39. DoEvents 40. myitem.Display 41. GoTo SendEmail 42. continue: 43. On Error GoTo 0 44. Set myOlApp = Nothing 45. Set myitem = Nothing 46. Next i 47. End Sub [/QUOTE][em04][em04][em04]
头像被屏蔽

TA的精华主题

TA的得分主题

发表于 2011-7-14 10:34 | 显示全部楼层
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

关闭

最新热点上一条 /1 下一条

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

GMT+8, 2024-12-24 00:16 , Processed in 0.040495 second(s), 8 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

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

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

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