Excel单元格发生变化后,使用Outlook给特定的人发邮件

自己在公司里面维护了一个小金库的Excel,当某个人的余额小于0的时候,Outlook会自动给这个人发一封邮件,同时将这个Excel附在邮件中,具体的代码如下:

Public Function sendEmail(mailTo As String)
    Application.ScreenUpdating = False
    Dim outapp As Object
    Dim outmail As Object
    Dim body As String
    Dim fname As String

    Set outapp = CreateObject("Outlook.Application")
    Set outmail = outapp.CreateItem(0)

    fname = "T:\Controlled\Cao Qingsong\Bills_of_EE.xlsm"               ‘这里设置你要附的文件
    body = "Please see attached."                                       ‘这里设置你的邮件内容

    On Error Resume Next
    With outmail
        .To = mailTo                                                    ‘收件人
        ‘.CC = "[email protected]; [email protected]"                     ‘抄送人
        ‘.BCC = "[email protected]; [email protected]"                           ‘密送人
        .Subject = "小金库明细"                                         ‘这里是你的主题
        .body = body
        .Attachments.Add fname
        ‘.Display                                                       ‘显示发信窗口
        .Send                                                           ‘执行发信动作
    End With
    On Error GoTo 0

    Set outmail = Nothing
    Set outapp = Nothing

    Application.ScreenUpdating = True
End Function

Private Sub Worksheet_Change(ByVal Target As Range)

    newHour = Hour(Now())
    newMinute = Minute(Now())
    newSecond = Second(Now()) + 1
    waitTime = TimeSerial(newHour, newMinute, newSecond)

    Application.DisplayAlerts = False
    ThisWorkbook.Save
    ‘Application.Wait 1

    Application.EnableEvents = False
    If Sheet1.Range("E1").Value < 0 Then
        sendEmail ("[email protected]")
    End If
    Application.EnableEvents = True
End Sub
时间: 2024-07-30 11:50:41

Excel单元格发生变化后,使用Outlook给特定的人发邮件的相关文章

JAVA实现Excel——Excel单元格设计

Excel底层实现是使用C/C++实现的,而我若使用JAVA语言,首先需要对单元格进行对象化,即用一个Cell类来表示每一个单元格(实际上就是一个数据结构): 在我编程过程中,在设计一个简单的类时,往往需要从其父类.接口.Field.Method等几个方面进行分析,以满足功能.性能.可拓展性的要求. 1)接口分析 Serializable接口,EXCEL单元格需要实现复制功能,或者拖拽功能,就必须进行复制(必须为深复制),所以需实现Serializable接口,通过流的方法进行深复制 Compa

excel单元格中批量加入固定字符

excel单元格前怎么批量加字母 现在我要在联系人这列,每个姓名前加入衡阳的首字母简写(HY). 3 在同行上面随便找列,我找D列.输入公式:="HY"&A2. 5 输入后,点击回车.出现 “HY黑米哥” 6 单元格的下方不是有一个小方点吗,按着鼠标左键往下拖动直到结束 切记,此时不能直接把做好的复制粘贴过去,因为此时为公式,不是数值.可以用鼠标点击一下,上面显示公式. 方法一:选择性粘贴. 方法二:记事本方法.把处理好的数据复制,粘贴到记事本中. 全选记事本数据,复制.粘贴回

NPOI Excel 单元格背景颜色对照表

NPOI Excel 单元格颜色对照表,在引用了 NPOI.dll 后可通过 ICellStyle 接口的 FillForegroundColor 属性实现 Excel 单元格的背景色设置,FillPattern 为单元格背景色的填充样式. NPOI Excel 单元格背景颜色设置方法以及颜色对照表: 1 2 3 4 5 6 ICellStyle style = workbook.CreateCellStyle(); style.FillForegroundColor = NPOI.HSSF.U

Excel 单元格自定义格式技巧总结

第一部分 Excel 中的单元格格式是一个最基本但是又很高级的技能,说它基本是因为我们几乎天天都会用到它,会用它来设置一些简单的格式,比如日期,文本等等:高级是因为利用 Excel 单元格的自定义格式我们可以实现一些看起来非常神奇和有用的效果.下面我们就由浅入深的来介绍一下 Excel 单元格自定义格式的知识和技巧. 1."G/通用格式" 以常规的数字显示,相当于"分类"列表中的"常规"选项. 代码:G/通用格式.10 显示为 10:10.1 显

这个技巧你肯定不会!Excel单元格锁定图片,随单元格大小而变化

http://www.wordlm.com/Excel/jqdq/6619.html  这个技巧你肯定不会!Excel单元格锁定图片,随单元格大小而变化 在用Excel制作一些产品价格表或者人员信息表时候,我们经常会插入一些产品图片,或者是某人的相片等.许多人在插入图片后,会发现图片与单元格无法锁定在一起,这样的话,每次单元格只要有什么变动,图片依然在原来地方不动,非常麻烦. 那有没有什么办法,能够将图片与某单元格完全的锁定一起,单元格变动时,图片也会随着变化大小呢?方法当然是有的,今天小汪老师

Excel单元格内容太多会覆盖遮住下一单元格范围

Excel单元格内容太多会覆盖遮住下一单元格范围分步阅读 Excel中的单元格内容,有着不同的对齐方式.用户可根据自己的需求,在处理数据的时候,自行设置所需要的对齐方式. 当您在处理数据的时候,如果设置不当,就会遇到这样的问题:Excel单元格内容太多会覆盖遮住下一单元格范围. 可以通过如下的方法来解决. 方法/步骤 如下图,B2单元格,仅输入了几个中文,但是,由于列的宽度不够,因此,该单元格的内容会延伸到下一单元格并覆盖了下一单元格的范围.从而影响了下一单元格的输入与修改. 此时,我们需要的方

C# 导入图片到Excel单元格

导出Excel功能时需要将数据中含有图片也导出到excel单元格中 public void InsertPicture(string RangeName, string PicturePath, Microsoft.Office.Interop.Excel.Worksheet worksheet) { Microsoft.Office.Interop.Excel.Range m_objRange = worksheet.get_Range(RangeName, Type.Missing); m_

poi设置一个Excel单元格的内容为多种样式的方法

有的时候我们POI操作Excel时,需要将Excel单元格的内容设置为多种样式,比如:设置单元格的内容为两种颜色,方法如下: //定义字体 HSSFFont redFont = (HSSFFont) workbook.createFont(); redFont.setColor(HSSFColor.RED.index);// 红色 HSSFFont blueFont = (HSSFFont) workbook.createFont(); redFont.setColor(HSSFColor.BL

qtp 读取excel单元格内容

qtp 读取excel单元格内容 Function GetExcelCells(ExcelPath,SheetName,SheetColumn,SheetRow) Set ExcelBook = CreateObject("Excel.Application") Set ExcelSheet = CreateObject("Excel.Sheet") Set myExcelBook = ExcelBook.WorkBooks.Open(ExcelPath) Set