Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 5058|回复: 10

[已解决]excel判断单元格为数值小于O,则自动发送邮件给指定邮箱地址

[复制链接]
发表于 2015-11-30 13:57 | 显示全部楼层 |阅读模式


请哪位大虾,帮一个宏,excel中判断C列的数据如果小于O,则系统自动发送D列对应的邮箱地址,可以是每天自动发送或者是手工群发送邮件。附件是源文件和截图

最佳答案
2015-11-30 14:46
  1. Sub SendMail1()
  2.     Dim OutlookApp As Object
  3.     Dim MailItem As Object
  4.     Option1 = MsgBox("是否自动发送?点击确认自动发送,取消则手动群发!", vbOKCancel, "群发&手动")
  5.    
  6.     If Option1 = 1 Then
  7.         For i = 2 To [a65536].End(xlUp).Row
  8.             If Cells(i, 3) < 0 Then
  9.                 Set OutlookApp = CreateObject("Outlook.Application")
  10.                 Set MailItem = OutlookApp.CreateItem(olMailItem)
  11.                 With MailItem
  12.                     .To = Cells(i, 4)
  13.                     .Subject = "自动发送"
  14.                     .Body = "自动发送"
  15.                     .Send
  16.                     '.Display
  17.                 End With
  18.                 Set OutlookApp = Nothing
  19.                 Set MailItem = Nothing
  20.             End If
  21.         Next i
  22.     Else
  23.         For i = 2 To [a65536].End(xlUp).Row
  24.             If Cells(i, 3) < 0 Then
  25.                 receipt = Cells(i, 4) & ";" & receipt
  26.             End If
  27.         Next i
  28.         Set OutlookApp = CreateObject("Outlook.Application")
  29.         Set MailItem = OutlookApp.CreateItem(olMailItem)
  30.         With MailItem
  31.             .To = receipt
  32.             .Subject = "自动发送"
  33.             .Body = "自动发送"
  34.             .Display
  35.         End With
  36.         Set OutlookApp = Nothing
  37.         Set MailItem = Nothing
  38.     End If
  39. End Sub
复制代码
QQ截图20151130112318.jpg
 楼主| 发表于 2015-11-30 13:58 | 显示全部楼层
回复

使用道具 举报

发表于 2015-11-30 14:01 | 显示全部楼层
回复

使用道具 举报

 楼主| 发表于 2015-11-30 14:42 | 显示全部楼层
那不是,针对不同的人,上面是举例说明
回复

使用道具 举报

发表于 2015-11-30 14:46 | 显示全部楼层    本楼为最佳答案   
  1. Sub SendMail1()
  2.     Dim OutlookApp As Object
  3.     Dim MailItem As Object
  4.     Option1 = MsgBox("是否自动发送?点击确认自动发送,取消则手动群发!", vbOKCancel, "群发&手动")
  5.    
  6.     If Option1 = 1 Then
  7.         For i = 2 To [a65536].End(xlUp).Row
  8.             If Cells(i, 3) < 0 Then
  9.                 Set OutlookApp = CreateObject("Outlook.Application")
  10.                 Set MailItem = OutlookApp.CreateItem(olMailItem)
  11.                 With MailItem
  12.                     .To = Cells(i, 4)
  13.                     .Subject = "自动发送"
  14.                     .Body = "自动发送"
  15.                     .Send
  16.                     '.Display
  17.                 End With
  18.                 Set OutlookApp = Nothing
  19.                 Set MailItem = Nothing
  20.             End If
  21.         Next i
  22.     Else
  23.         For i = 2 To [a65536].End(xlUp).Row
  24.             If Cells(i, 3) < 0 Then
  25.                 receipt = Cells(i, 4) & ";" & receipt
  26.             End If
  27.         Next i
  28.         Set OutlookApp = CreateObject("Outlook.Application")
  29.         Set MailItem = OutlookApp.CreateItem(olMailItem)
  30.         With MailItem
  31.             .To = receipt
  32.             .Subject = "自动发送"
  33.             .Body = "自动发送"
  34.             .Display
  35.         End With
  36.         Set OutlookApp = Nothing
  37.         Set MailItem = Nothing
  38.     End If
  39. End Sub
复制代码
回复

使用道具 举报

 楼主| 发表于 2015-12-1 10:42 | 显示全部楼层
L50814026 发表于 2015-11-30 14:46

你好,非常感谢您的的帮忙!
实际操作中,我点击手动发送是可以实现的,但采用自动发送后,程序跑步下去了,是不是我是自动发送邮箱还要再设置一下?
附件是源文件,可否再帮详细分解下,谢谢
因我是菜鸟,请帮忙,谢谢
33.jpg

测试项目3.rar

27.28 KB, 下载次数: 47

回复

使用道具 举报

发表于 2015-12-1 11:50 | 显示全部楼层
czhlh 发表于 2015-12-1 10:42
你好,非常感谢您的的帮忙!
实际操作中,我点击手动发送是可以实现的,但采用自动发送后,程序跑步下去 ...

我测试没有问题,你是断在哪里?

回复

使用道具 举报

 楼主| 发表于 2015-12-1 14:43 | 显示全部楼层
L50814026 发表于 2015-12-1 11:50
我测试没有问题,你是断在哪里?

见图片,谢谢
11.jpg
222.jpg
回复

使用道具 举报

发表于 2015-12-26 23:28 | 显示全部楼层
学习一下
回复

使用道具 举报

发表于 2015-12-31 09:24 | 显示全部楼层
手动发送是可以实现的,但采用自动发送后运行错误:运行时错误287,应用程序定义或对象定义错误
回复

使用道具 举报

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

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-5-17 23:11 , Processed in 2.164708 second(s), 12 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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