Tag: 前景

使用Excel VBA在多收件箱环境中search特定的Outlook收件箱

我试图search一堆论坛,但一直没能find解决我的问题。 我会承认,我对VBA对象的理解是有限的。 我有一个Excel VBA报告创build一个Outlook对象,然后扫描Outlook默认收件箱,直到它find一个未读的电子邮件。 我已经得到了代码在我的电脑上完美的工作。 但是,运行该软件的计算机有两(2)个不同的与Outlook绑定的电子邮件地址/收件箱(一个是个人收件箱,另一个是收件箱)。 我一直用来search我的个人收件箱的代码是(它继续search未读的电子邮件等): Application.ScreenUpdating = False Dim oOlAp As Object, oOlns As Object, oOlInb As Object Dim oOlItm As Object, oOlAtch As Object '~~> New File Name for the attachment Dim NewFileName As String NewFileName = "ActInv Export" '~~> Get Outlook instance Set oOlAp = GetObject(, "Outlook.application") Set oOlns = oOlAp.GetNamespace("MAPI") […]

Excel文件打开后,Excel交互不起作用

我使用OUTLOOK VBA中的代码打开一个Excel工作簿: '~~> BEGINNING OF EXCEL CODE <~~ Dim xlApp As Excel.Application Dim sourceWB As Excel.Workbook Dim sourceWS As Excel.Worksheet Set xlApp = New Excel.Application With xlApp .Visible = True .EnableEvents = True .UserControl = False .DisplayAlerts = False .AskToUpdateLinks = False End With strFile = scPATH & "Seattle ScoreCard " & Format(prevSCdate, "mm") & […]

从特定的Outlook文件夹下载电子邮件并保存

我得到一个运行时错误5“无效的过程调用或参数”在下面的行 Set oOlInb = oOlns.GetDefaultFolder(olFolderInbox) 转到我的Outlook中标题为Spreadsheets的文件夹 – 将会有2-3个电子邮件。 可能会被读取,可能是未读 – 所以我不想像我在这里看到的一些代码一样限制为未读。 从这些电子邮件下载所有的附件到我的桌面上的文件夹 然后删除位于该Spreadsheets Outlook文件夹中的所有电子邮件(我还没有在代码中包含此部分) 我试过修改代码一堆。 但是我一直无法工作。 我想我在理解每个部分正在做什么时遇到了一些麻烦。 Sub GetAttachments() Dim oOlAp As Object, oOlns As Object, oOlInb As Object Dim oOlItm As Object, SubFolder As Object, oOlAtch As Object Dim NewFileName As String Const AttachmentPath As String = "\\dsapc429pfs.pactual.net\homefolder02$\wellsty\Desktop\Testing Email Download" NewFileName = AttachmentPath & […]

用于多个匹配单元检测的macros

我正在执行一个macros来检查E列date是否离当前date7天。 如果单元格date – 当前date= 7 然后发送包含具有匹配的单元格的行的电子邮件。 这是我的代码,它成功的工作,除了一个问题。 Sub Workbook_Open() Dim rngStart As Range Dim rngEnd As Range Dim rngCell As Range Dim strHtmlHead As String Dim strHtmlFoot As String Dim strMsgBody As String Dim strMsgBody1 As String Dim strMsg As String Dim objEmail As Object Dim OutlookApp As Object Dim OutlookMail As Object 'On Error […]

在Excel中创build一个“检查姓名”button

我是使用VBA和macros的新手,想知道是否有方法在Excel中添加“检查名称”function(类似于Outlook中的function)。 我正在处理的部分表单需要我input员工的姓名,我希望能够点击一个button来确保我的拼写正确,并且在我们的电子邮件系统中。 任何帮助或指针在正确的方向将不胜感激!

使用正则expression式提取URL

我收到来自同一网站的10或12封电子邮件,我想使用正则expression式(如果可能)提取特定的URL,并将其粘贴到正确的Excel文件中。 电子邮件是在Outlook中,我已经有一个VBA脚本(从Outlook VBA运行),我用来提取主题和发件人。 但是,我真的需要在每封电子邮件中的特定URL作为第三条提取的信息。 我试图创build一系列步骤来: 创buildRegEx 将RegEx应用于当前电子邮件 将提取的URL放入Excel文档中。 但是,无论我创造了什么,都是悲惨的。 下面粘贴的VBA总是有效,直到我在附加的RegEx部分中写入。 我相信我有正确的模式: /http:\/\/www.changedetection.com\/log(.*)/ig 每当我运行新的VBA脚本,它什么也不做。 旧的代码一直工作。 代码被写入到这个Outlook会话(只是为了澄清),因为mailitem需要从脚本运行。 Const xlUp As Long = -4162 Sub ExportToExcel(MyMail As MailItem) Dim strID As String, olNS As Outlook.NameSpace Dim olMail As Outlook.MailItem Dim strFileName As String Dim strBody As String Dim Reg1 As RegExp Dim M1 As MatchCollection Dim M As […]

将Excel值输出格式化为Outlook

我正在尝试创build一个从Excel抓取信息并将其输出到Outlook的工具。 到目前为止这么好,但我无法得到一个数值显示在电子邮件格式。 它显示为简单的数字,例如203486442 ,但我想它是$203,486,441.93而不是。 尝试格式化时出现“无效限定符”错误。 这个数字是从我的工作表中的“总计”表中拉出的。 Sub Test1() Application.ScreenUpdating = False Application.DisplayAlerts = False Dim OutApp As Object Dim OutMail As Object Dim cell As Range Set OutApp = CreateObject("Outlook.Application") Dim LastRow As Long Dim LastValue As Long LastRow = Sheets("Detail Aging").Range("E" & Rows.Count).End(xlUp).Row LastValue = Sheets("Detail Aging").Range("E" & LastRow).Value Dim strbody As String For […]

通过VBA发送电子邮件

试图通过Outlook发送电子邮件,但它不保存excel文件,所以它不能做附件。 我的代码也不能popupOutlook窗口。 之前正在工作,但由于networking驱动器,它不再工作。 Sub Backup_required() 'coded by Atul , Vij Dim OutlookApp, MItem As Object Dim cell As Range Dim Subj As String Dim EmailAddr As String Dim Recipient As String Dim Msg As String Dim ws As Worksheet, ws2 As Worksheet, ws3 As Worksheet Dim wb As Workbook, wb2 As Workbook Dim main_book As […]

在Outlook中使用VBAembedded图像

下面的代码不起作用。 它embedded照片,但不显示,因为“文件可能已被移动,重命名或删除。确认链接指向正确的文件和位置。 我知道文件path是正确的,因为我已经检查了三倍。 一个新的眼睛可以帮助。 Sub mail() Dim Sig As String Set myOlApp = CreateObject("Outlook.Application") LR400 = Columns(1).Find("*", SearchDirection:=xlPrevious).Row sPath = Environ("appdata") & "\Microsoft\Signatures\Amir Higgs.txt" For x = 2 To LR400 If Cells(x, 2) <> "no email" Then emails = Cells(x, 1) 'TheBody1 = "The Parallon Workforce Team" & vbCrLf & vbCrLf & vbCrLf & _ […]

使用Excel VBAselectOutlook文件夹

我试图绕过不得不select我想要的文件夹,只是告诉Excel继续前进,并计数“收件箱” Sub Get_Emails() Dim OLF As Outlook.MAPIFolder Dim EmailItemCount As Long Set OLF = GetObject("", "Outlook.Application").GetNamespace("MAPI").PickFolder EmailItemCount = OLF.Items.Count Range("A1") = EmailItemCount Set OLF = Nothing Application.StatusBar = False End Sub 有谁知道如何才能得到计数,而不必select文件夹? Excel VBA应该自动进入“收件箱”,并给我点数。 注意:您必须转到工具>参考>,然后select“Microsoft Outlook 14.0对象库”才能使此macros工作。