精华内容
下载资源
问答
  • VBA检查发送邮件附件

    千次阅读 2013-02-01 15:23:13
    最近发邮件老是忘记发送邮件附件,自己写了个vba小程序进行检查,如果title(主题)包含特定字符串,比如公司要求的leave request,time sheet就会进行检查并提示。感觉挺好用。代码和步骤如下。  打开outlook...

      最近发邮件老是忘记发送邮件附件,自己写了个vba小程序进行检查,如果title(主题)包含特定字符串,比如公司要求的leave request,time sheet就会进行检查并提示。感觉挺好用。代码和步骤如下。

    1.  打开outlook
    2.  ALT+F11 进入代码编辑模式
    3. 在模块ThisOutlookSession中添加代码并保存即可
      图片为截图



    代码如下:
    Private Sub Application_ItemSend(ByVal Item As Object, Cancel As Boolean)
        'Pops up a reminder if the word "attach?± is found but there is no attachment on your email.
    Dim m As Variant
    Dim strBody As String
    Dim intIn As Long
    Dim intAttachCount As Integer, intStandardAttachCount As Integer
    Dim strTitle As String
    Dim arrLen As Integer
      'title检查文本
    checkStr = Array("leave request", "expense sheet", "timesheet", "time sheet", "attach")
    
    Dim hasAtt As Boolean
    
    
    On Error GoTo handleError
    intStandardAttachCount = 1
    
    'for title check
    strTitle = LCase(Item.Subject)
        
    arrLen = UBound(checkStr)
    For i = 0 To arrLen
        intIn = InStr(1, strTitle, checkStr(i))
        If intIn > 0 Then hasAtt = True
        intIn = 0
    Next i
        
    If hasAtt = True Then
        m = MsgBox("你又忘记附件了!" & vbCrLf & "there is no attachment to this message." & vbCrLf & vbCrLf & "Do you still want to send?", vbQuestion + vbYesNo + vbMsgBoxSetForeground)
    
    If m = vbNo Then Cancel = True
    
    End If
    
    handleError:
    
    If Err.Number <> 0 Then
        MsgBox "Outlook Attachment Reminder Error: " & Err.Description, vbExclamation, "Outlook Attachment Reminder Error"
    End If
    End Sub
    

    也可以添加别的检查,看自己的需求了。
    参考文章:http://www.businesshut.com/outlook-macros/outlook-attachment-reminder-macro/ 。

    展开全文
  • Outlook 标题 附件 提醒 VBA 代码

    千次阅读 2013-03-24 22:35:04
    经常为忘了写标题和贴附件而苦恼,今天开始不用了。。。 老大推荐了这个宏,很好很强大,只是存在几个Bug... 1.代码格式十分FT..提示用中文 2.邮件的回复、转发等内容不用检查 3.提示在前台而不是后台 4.取消...

     

    网上转载,仅供参考

    经常为忘了写标题和贴附件而苦恼,今天开始不用了。。。

    老大推荐了这个宏,很好很强大,只是存在几个Bug...
    1.
    代码格式十分FT..提示用中文
    2.
    邮件的回复、转发等内容不用检查
    3.
    提示在前台而不是后台
    4.
    取消发送不是将邮件保留到草稿箱。

    操作如下:
    a. 
    打开outlook
    b. 
    “Alt + F11” 键来打开VB Script,或者[工具]->[]->[Visual Basic 编辑器]
    c. 
    点击左侧树状目录最下面的“ThisOutlookSession”,看到右边出现空白的编辑窗口
    d. 
    把代码拷贝到编辑窗口,保存,退出VB Script编辑。

    代码修改了如下:

    重启失效的原因是需要修改outlook工具”-->“”-->“安全性”-->修改安全级别为中或者低 

    这样重启outlook的时候,才会提示你是否加载该宏,而不是直接就默认拒掉

     

    Private Sub Application_ItemSend(ByVal Item As Object, Cancel As Boolean)

    If TypeName(Item) <> "MailItem" Then Exit Sub

    Dim intRet As Integer

    'CHECK FOR BLANK SUBJECT LINE
    If Item.Subject = "" Then
        intRet = MsgBox("
    警告:您的郵件缺少主題,請注意填寫" & vbNewLine, vbOKOnly + vbMsgBoxSetForeground + vbExclamation, "缺少主題")
        If intRet = vbOK Then
            Cancel = True
            Exit Sub
        End If
    End If

    'CHECK FOR FORGETTING ATTACHMENT
    Dim intRes As Integer
    Dim strMsg As String
    Dim strThismsg As String
    Dim intOldmsgstart As Integer

    ' Does not search for "Attach", but for all strings in an array that is defined here
    Dim sSearchStrings(2) As String
    Dim bFoundSearchstring As Boolean
    Dim i As Integer

    bFoundSearchstring = False
    sSearchStrings(0) = "attach"
    sSearchStrings(1) = "enclose"
    sSearchStrings(2) = "
    附件"

    ' intOldmsgstart = InStr(Item.Body, "-----Original Message-----")
    intOldmsgstart = InStr(Item.Body, "
    發件人:")

    If intOldmsgstart = 0 Then
        strThismsg = Item.Body + " " + Item.Subject
    Else
        strThismsg = Left(Item.Body, intOldmsgstart) + " " + Item.Subject
    End If

    ' The above if/then/else will set strThismsg to be the text of this message only,excluding old/fwd/re msg
    ' if the original included message is mentioning an attachment, ignore that Also includes the subject line at the end of the strThismsg string

    For i = LBound(sSearchStrings) To UBound(sSearchStrings)
        If InStr(LCase(strThismsg), sSearchStrings(i)) > 0 Then
            bFoundSearchstring = True
            Exit For
        End If
    Next i


    If bFoundSearchstring Then
        If Item.Attachments.Count = 0 Then
            strMsg = "
    警告:您的郵件缺少附件,請注意添加" & vbNewLine & "確認是否發送?"
            intRet = MsgBox(strMsg, vbYesNo + vbMsgBoxSetForeground + vbDefaultButton2 + vbExclamation, "
    缺少附件")
            If intRet = vbNo Then
                Cancel = True
                Exit Sub
            End If
        End If
    End If

    End Sub

     

    展开全文
  • 1.打开OutLook,用ALT+F11打开VBA编辑器 2.插入以下代码: Private Sub Application_NewMail() Dim myOlApp As Application Dim myNameSpace As NameSpace Dim myibox As MAPIFolder Dim mydelit...

    1.打开OutLook,用ALT+F11打开VBA编辑器

    2.插入以下代码:

    Private Sub Application_NewMail()
    
         Dim myOlApp As Application
         Dim myNameSpace As NameSpace
         Dim myibox As MAPIFolder
         Dim mydelitems As MAPIFolder
         Dim myitem As MailItem
         Dim subject As String
         Dim rectime As String
         Dim from_addr As String
         Dim to_addr As String
         Dim emailbody As String
         Dim att_count As Integer
         Dim sql_str As String
         Dim strConn As String
         Dim myGuid As String
         Dim TypeLib
         Dim i As Integer
         Dim path As String
    
         Dim cn As Object
         Set cn = CreateObject("ADODB.Connection")
         strConn = "Provider=sqloledb;Server=192.168.3.9;Database=GEARMAGE;Uid=GEARMAGE;Pwd=GEARMAGE;"
         cn.Open strConn
         
         Set myOlApp = CreateObject("Outlook.Application")
         Set myNameSpace = myOlApp.GetNamespace("MAPI")
         Set myibox = myNameSpace.GetDefaultFolder(olFolderInbox)
         Set myFolder = myibox.Folders("PendingProcess")
         Set mymovefolder = myibox.Folders("Processed")
         Set TypeLib = CreateObject("Scriptlet.TypeLib")
         sql_str = String(3000, 0)
     
         For n = 1 To myFolder.Items.count
             Set myitem = myFolder.Items(n)
             If myitem.UnRead = True Then
                subject = myitem.subject
                rectime = myitem.CreationTime
                from_addr = myitem.SenderName
                to_addr = myitem.To
                emailbody = myitem.Body
                att_count = myitem.Attachments.count
                myGuid = Mid(TypeLib.GUID, 2, 36)
                sql_str = "INSERT INTO dbo.OUTLOOK_VBA_TEST( ID ,NAME ,EMAIL_DATE ,FROM_ADDR ,TO_ADDRS ,EMAIL_BODY ,ATTACHMENTS_COUNT) VALUES  ('" + myGuid + "','" + subject + "','" + rectime + "','" + from_addr + "','" + to_addr + "','" + emailbody + "'," + CStr(att_count) + ")"
                cn.Execute (sql_str)
                
                If att_count > 0 Then
                 For i = 1 To att_count
                  Set olAtt = myitem.Attachments(i)
                    path = "D:\Email Attachment Temp\{" + myGuid + "}" + olAtt.FileName
                   olAtt.SaveAsFile path
                 Next
                End If
            End If
            myitem.Move mymovefolder
         Next n
         
         cn.Close
         Set cn = Nothing
         Set fldFolder = Nothing
         Set myNameSpace = Nothing
    
    
    End Sub
    

      3.利用Office Outlook 2007的规则,它可以设定对满足一定条件的邮件自动运行脚本,然后选择脚本为SaveAttach函数即可。这样便能实现收到某些邮件时自动保存符合条件的附件到相应文件目录。  说明:Outlook里面可以设置“通知和规则”,(在“工具”=>“规则和通知”)如图:

    注:在Outlook的信任中心勾选上“允许使用脚本在Outlook的信任中心勾选上“允许使用脚本”。

    转载于:https://www.cnblogs.com/kangjing/p/6841722.html

    展开全文
  • VBA-Whatsapp-Bot 该Excel允许仅在Windows中将带有附件的大量消息发送到Whatsapp '-----------------注意事项----------------------------------- --------------------必须下载适用于PC的WhatsApp应用程序。 ...
  • [VBA]Excel操作IE(打开网页、等待网页加载、填写网页控件数据、点击网页按钮、抓取网页数据) 该贴的附件提供了一个利用SHDocVw.InternetExplorer对象、进行打开网页、等待网页加载、填写网页控件中数据(检索条件)...

    [VBA]Excel操作IE(打开网页、等待网页加载、填写网页控件数据、点击网页按钮、抓取网页数据)

     

          该贴的附件提供了一个利用SHDocVw.InternetExplorer对象、进行打开网页、等待网页加载、填写网页控件中数据(检索条件)、点击网页按钮(检索按钮)、等待网页加载(检索中)、抓取网页数据(检索结果)的一个完整的例子。

    该技术对与开发人员可以用于Web页面的批量测试、类似于JUnit方式的测试、也可以用于批量也网页重复操作、比如网页考勤系统的登录、出勤、退勤等等。

     

    该贴摘自:http://www.officefans.net/cdb/viewthread.php?tid=68888

    附件:http://access911.net/csdn/FileDescription.asp?mdb=2009-9-11&id=8

    原帖内容如下:

    用VBA抓取网页数据,通常可以用Excel VBA的workbooks.open "http://....."语句来实现打开网页,之后用find和offset等方法定位数据的位置,再复制到指定的地方。
    或者用QueryTableActiveSheet.QueryTables.Add(Connection:="URL;http://.....", Destination:=Range("A1"))
    但是,在有些场合可能这两种方法不容易实现,比如:
    1.导入查询结果页面。(每次要先提交表单才能得到数据页,数据是分页的,但各分页URL一样,没有?page=2之类的)
    2.要先提交表单或点击链接才能得到数据页,网页在IE中显示正常,但直接将URL用Workbooks.open或QueryTables.add打开则显示超时等错误)
    3.批量导入网址不规则的页面。(所有要导入的页面都在某个网页上有链接,但网址没有规律)

    如果对html和网页script脚本熟悉的话,可以用IExplorer对象打开网页,然后用VB脚本控制网页内各个元素的行为来填写、提交表单或打开超级链接,然后取得网页内各个元素的innerText来实现获取数据。

    展开全文
  • Outlook VBA自动处理邮件

    万次阅读 2015-04-04 17:39:17
    还有些邮件,根据正文或者附件做一下处理自动转发出去就行了。于是上网搜集了一些资料,写个了小程序,共享一下,以后可以参考,也希望对大家有点用处。 实现 废话少说,直接上代码吧。打开Outlook,按Alt+F11打开...
  • 展开全部朋友,我发给你的附件中不就是例子吗!其实也就几个参数而以;你可以偿试62616964757a686964616fe58685e5aeb931333332626635改下里面的参数,会存现不动的效果;我把几个参的详细给你说下吧:全部是我以前...
  • 在代理中利用VBA对word附件直接编辑后保存步骤:1、获得附件,并拆分到服务器临时目录里后再删除附件2、创建word对象,并打开临时目录里的文件3、编辑附件然后保存4、将附件添加到文档中并保存Sub Initialize On ...
  • 01007获取打开Excel文件时的默认路径 01008获取模板保存的默认路径 01009获取库文件夹的路径 01010获取路径分隔符 01011获取Excel主窗口标题栏的名称 01012获取Excel窗口的状态(大小) 01013获取Excel主窗口的高度...
  • 使用OFFICE宏VBA编程发送文件,分析一下可以分为三步,一是将含有宏的OFFICE文件(Word、Excel等)发给被别人,当他打开该文件时触发宏;二是搜索他的计算机,找到我们需要的文件;三是通过电子邮件将该文件作为附件...
  • 附件用excel自带的VBA,调用windowsAPI 用 mouse_event 实现了对前台程序发送按键和鼠标动作 用 sendmessege 实现了对后台程序发送鼠标动作 做法是 先人手打开画图程序,切换回excel点击按钮 就可以在画图程序画出...
  • 附件的 .mht文件,是一个简单介绍贝塞尔三次插值的文档,可以用IE打开,更多贝塞尔插值的算法,可以用搜索引擎找 附件的 .xls文件,打开以后,会看见三个工作表,分别演示了 找一个数值在曲线上的一组对应点 找一个...
  • 在上一讲中我们讲了使用Environ函数返回电脑的名称,使程序只能在某一特定的电脑中使用,完成为某台电脑量身定做程序的作用,但这里有个不足,电脑的名称是可以修改的,可以多台...在“附件”中打开 “命令提示符”...
  • 本帖最后由 jiamian0128 于 2019-7-25 12:32 编辑在之前的的问题里面,我求助了如何通过EXCEL VBA 提取CAD的数据,非常感谢论坛大神的帮助,现在能满足一些基本要求了,现在把附件代码贴出来。希望论坛大神如果方便...
  • 最近有个同事收到了50多封邮件,每个邮件基本带一个附件,问我有没有办法帮忙批量处理,我马上想到用VBA来进行批量处理,然后上网搜了一下解决办法,这里将实现步骤记录下来。 2.实现步骤 首先在D盘新建一个...
  • Outlook 宏命令提醒插入附件

    千次阅读 2014-12-26 14:57:54
    1、在Outlook里面键入ALT+F11打开VBA编辑器; 2、键入CTRL+R激活左边的那个工程面板,展开并双击上面的“Project (VbaProject.OTM)\Microsoft Office Outlook 对象\ThisOutlookSession”; 3、将下面的代码粘贴到...
  • 直接上传程序,office2007版的,各位打开压缩包后把职工管理数据库复制到这个路径“D:/My Documents/实验/职工管理.mdb”帮我看看增加新记录按钮哪里有问题,程序运行起来没有报错,但是不能向access添加内容,现...
  • 打开Outlook,ALT + F11,打开VBA窗口,帖上如下代码,保存。自定义功能区,找到刚才添加的宏,放置到主页邮件功能区,再重命名即可。Sub 带附件答复() Dim rpl As Outlook.MailItem Dim itm As Object Set itm = ...
  • 邮箱附件 保存到指定的文件夹

    千次阅读 2013-11-20 11:00:27
    在工作中定期或不定期会收到一些数据文件,然后要将它们的附件保存到自己的电脑上,下面演示如何让...用ALT+F11打开VBA编辑器,插入下述代码: Public Sub SaveAttach(Item As Outlook.MailItem) SaveAttachment It
  • Excel自动打开、刷新、保存

    千次阅读 2019-07-26 10:28:05
    1、解决思路:①、系统设置定时任务,每天凌晨打开需要发送的excel附件;②、excel直连后台数据库,设置excel更新数据库数据时间为半小时或一小时;③、excel中进行VBA编程,确保excel每半小时或一小时保存;如此,...
  • Outlook 自动保存附件

    2013-01-23 11:13:33
    提示:请先在Outlook中启用...打开Outlook, 按Alt+F11进入VBA编辑窗口,将如下代码复制进去。 Public Sub saveAttachtoDisk (itm As Outlook.MailItem) Dim objAtt As Outlook.Attachment Dim saveFolder As...
  • 打开Outlook2007后在Outlook2007界面下按下Alt+F11键进入Vba开发环境,依次展开  Project1->Microsoft Office Outlook 然后双击打开Microsoft Office Outlook 下的ThisOutlookSession对象,在代码输入界面输入...
  • 利用vba宏编程可以实现发送邮件前检查。 打开outlook后,按【alt】+【f11】,点击左侧的 ThisOutlookSession,将以下代码复制进去,保存、退出,重启outlook启用宏。 这样如果在邮件正文中有“附件”俩字,缺...
  • Outlook自动保存附件到硬盘目录

    千次阅读 2011-12-09 07:50:01
    打开outlook, 按ALT-F11,打开microsfot visual basid-vbaProject, 工具-preferences- 确保microsoft office Object library前面打了勾。 然后,插入-模块 Sub SaveToNwsFolder(MyMail As MailItem) Dim ...
  • 按ALT+F11进入VBA集成开发环境,在左上角的工程资源管理器中依次展开Project1/Microsoft Office Outlook 对象/ThisOutlookSession,双击ThisOutlookSession,打开代码输入界面,贴入下面的代码,保存退出即可。...
  • 能否在“导入数据”按钮中写入一段VBA程序,将文件夹中各总队黄色标记单元格中的数据导入汇总表对应总队颜色标记的单元格中,跪谢!请见附件附件: 您需要登录才可以下载或查看附件。没有帐号?注册Sub yy() ...
  • 邮件自动分发-04-邮件正文带图片

    千次阅读 2019-06-03 20:06:42
    微信公众号原文 系统:Windows 7 软件:Excel 2010 本系列讲讲如何使用VBA进行邮件自动分发 本文的方法借助于Outlook软件实现 今天讲讲如何在邮件正文...目标在于接收方可以快速获取附件信息,无需单独打开 例如分...
  • 最近,Cybaze-Yoroi ZLab的研究人员对一款针对意大利汽车行业的...恶意电子邮件的附件是一个PowerPoint外接程序文件(.ppa文件),包含能够自动运行的VBA宏代码。 图1:.ppa文件打开时显示的弹出窗口 技术分析 ...

空空如也

空空如也

1 2
收藏数 35
精华内容 14
关键字:

vba打开附件