Tag: outlook vba

自动保存附件的Outlook转换为CSV

我已经使用下面的代码来自动保存文件名中的某些文本的Excel文件到他们到达我的Outlook文件夹中的特定位置: Public Sub saveAttachtoDisk(itm As Outlook.MailItem) Dim objAtt As Outlook.Attachment Dim saveFolder As String saveFolder = "c:\temp\" For Each objAtt In itm.Attachments If InStr(objAtt.DisplayName, ".xlsx") Then If InStr(objAtt.DisplayName, "Test") Then objAtt.SaveAsFile saveFolder & "\" & objAtt.DisplayName End If End If Next End Sub 有没有办法我也可以让Outlook以.csv格式保存文件,或者至less指示它打开Excel并自动执行任务? 谢谢

如何将所有邮件从Outlook导出到Excel的特定文件夹

我有macros从Outlook INBOX的所有数据导出到Excel随着时间和date,但我需要设置到一个特定的文件夹以相同的方式复制。 如何设置到特定的子文件夹? Option Explicit Sub CopyToExcel() Dim xlApp As Object Dim xlWB As Object Dim xlSheet As Object Dim rCount As Long Dim bXStarted As Boolean Dim enviro As String Dim strPath As String Dim objOL As Outlook.Application Dim objFolder As Outlook.MAPIFolder Dim objItems As Outlook.Items Dim obj As Object Dim olItem 'As Outlook.MailItem […]

如何将.htm文件的内容添加到string?

我想将默认签名添加到从Excel中的用户窗体发送的电子邮件的末尾。 但是,由于身体是HTML(因为我不能改变)的签名,它不显示。 我有以下代码是default.htm签名的位置: strSig = Environ("AppData") & "\Microsoft\Signatures\Default.htm" 我现在需要做的(并且遇到问题)是将这个default.htm文件的内容添加到电子邮件正文的末尾。 但是,在做 .HTMLBody = "some text <br>" & strSig 它只是将文本forms的位置path添加到电子邮件。 我如何获得它插入的HTML文件的内容?

将Outlook“以脚本运行”规则集成到发送电子邮件的Excel VBA代码中

我有一个Excel VBA脚本,用于创build活动工作表的pdf ,然后用附带的pdf发送带有Outlook的电子邮件。 然后我在Outlook中有一个规则,在电子邮件上运行一个脚本,根据主题中的关键字到达已发送的文件夹,保存该电子邮件的pdf副本和/或它的附件。 我宁愿只用Excel VBA脚本保存由Excel VBA脚本发送的电子邮件的pdf副本。 否则,我需要在系统中的每台计算机上实现Outlook“以脚本运行”规则。 我怎样才能结婚的Outlook脚本的Excel脚本? Excel代码发送电子邮件(工作正常): Sub AttachActiveSheetPDF_01() Dim IsCreated As Boolean Dim PdfFile As String, Title As String Dim OutlApp As Object ' Define PDF filename Title = Range("C218").Value PdfFile = CreateObject("WScript.Shell").SpecialFolders("Desktop") & "\" & Title & ".pdf" ' Exportactivesheet as PDF With ActiveSheet .ExportAsFixedFormat Type:=xlTypePDF, FileName:=PdfFile, Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, […]

从Outlook中的VBA中,如何冻结Excel中的窗格?

我在Outlook中编写了一个VBAmacros,该macros引用了Excel工作簿并对该工作簿进行了更改。 我想冻结第1行下方的窗格(而不是“分割”)。 这是我尝试的代码: With Excel.ActiveWindow .SplitColumn = 0 .SplitRow = 3 .FreezePanes = True End With …和… Dim excApp As Object Set excApp = CreateObject("Excel.Application") With excApp.ActiveWindow .SplitColumn = 0 .SplitRow = 3 .FreezePanes = True End With 两者都抛出运行时错误91在行.SplitColumn = 0 。 我感谢任何帮助或指针。 谢谢!

VBA .Attachments.Add方法抛出错误

我正尝试使用VBA附件发送和发送电子邮件。 代码工作正常,没有Attachments.Add行,但与它得到错误“运行时错误440”:操作失败。 我在网上查找,似乎无法find一个原因。 我没有正确设置电子邮件对象吗? 代码如下: Sub test() Static objOutlook Dim objMailItem Dim objFileSystem Dim objNamespace Dim objSentFolder Const olFolderInbox As Long = 6 Set objOutlook = CreateObject("Outlook.Application") objOutlook.Session.GetDefaultFolder(olFolderInbox).Display objOutlook.ActiveExplorer.WindowState = WindowState Set objMailItem = objOutlook.CreateItem(0) objMailItem.Display With objMailItem .Subject = "test" Set recip = .Recipients.Add("cats@cats.com") .Attachments.Add = "file.xls" .Body = "" .DeleteAfterSubmit = False End […]

VBA使用OFT模板从Excel发送电子邮件 – 禁止自动签名

我创build了一个打开Outlook电子邮件模板的macros,以供用户发送(从电子表格中拉出一些附加信息)。 除了Outlook自动添加基于用户设置的签名外,一切进展顺利。 虽然我可以很容易地closures我自己的签名,但我并不是唯一可能运行此macros的人。 电子邮件模板中已经有公司签名,因此不需要添加个人签名。 Google为VBA生成的电子邮件提供了很多签名的build议,但我找不到任何关于它们的信息。 有任何想法吗? 现有的代码: … snip … Set otlApp = CreateObject("Outlook.Application") Set otlNewMail = otlApp.CreateItemFromTemplate("\\Path\To\MyFile.oft") With otlNewMail .Bcc = vEmailsFromSpreadsheet '(set earlier on) .Display End With 'otlApp.Quit Set otlNewMail = Nothing Set otlApp = Nothing Set otlAttach = Nothing Set otlMess = Nothing Set otlNSpace = Nothing

在Excel中使用VBA Outmail应用程序检测用户select

我试图找出一种方法来检测用户是否在所显示的Outlook应用程序中单击“发送”。 我已经尝试读取.Display的值,类似于使用FileDialog应用程序(someInt = .Show)时如何检测用户input,无济于事。 我无法findOutmail应用程序的任何文档,所以任何帮助将不胜感激。 Set olApp = CreateObject("Outlook.Application") Set Outmail = olApp.CreateItem(olMailItem) With Outmail .To = clientEmail .CC = projectManagerEmail .BCC = "" .Subject = projectName & " (PO # " & poNumber & ", Job #" & projectNumber & ") – " & fileType & " (" & fileName & ")" .Attachments.Add ActiveWorkbook.Path […]

VBAoutlook – 从Excel作为收件人检索电子邮件地址

我想从Excel单元格中检索电子邮件地址,并将其复制为outlook上的收件人。 然而,前景的“To”和“CC”是空的。 input和输出: 单元格A1是我要“发送给”的电子邮件地址。 单元格A2是我想要“抄送”的电子邮件地址。 我的VBA代码: Sub Button1_Click() Dim OutApp As Object Dim OutMail As Object Set OutApp = CreateObject("Outlook.Application") Set OutMail = OutApp.CreateItem(olMailItem) On Error Resume Next With OutMail .To = Cells("A1") .CC = Cells("A2") .BCC = "" .Subject = "This is the Subject line" End With On Error GoTo 0 Set OutMail = […]

代码从Outlook下载附件,将其保存在桌面上并打开它

这是Outlook中的代码自动设置Outlook中的规则以保存带有date戳记的附件(Excel): Public Sub saveAttachtoDisk(itm As Outlook.MailItem) Dim objAtt As Outlook.Attachment Dim saveFolder As String Dim dateFormat dateFormat = Format(Now, "yyyy-mm-dd H-mm") saveFolder = "c:\Users\abc1\Desktop\" For Each objAtt In itm.Attachments objAtt.SaveAsFile saveFolder & "\" & dateFormat & objAtt.DisplayName Set objAtt = Nothing Next End Sub 下一步,我想要的是打开附件一旦保存。 那可能吗? 这个怎么样? Public Sub saveAttachtoDisk(itm As Outlook.MailItem) Dim objAtt As […]