Tag: outlook vba

从Excel中将单元格的范围复制到Outlook中的电子邮件正文

如何使用VBA将Excel中的一系列单元格复制到Outlook中的电子邮件正文中(而不是将Excel文件作为附件添加)。 我只需要将内容作为Outlook邮件的主体。 任何人可以帮我编写这个使用macros?

无法发送在Excel单元格中命名的文件附件

我对VBA编程有点新,所以请耐心等待。 我试图通过一个标准的电子邮件,而不是一个个性化的审计备忘录来自动化我的组织部门负责人的电子邮件。 发送给某个人的每封电子邮件也应包含相应的附件。 我有一个包含三列的电子表格:姓名,电子邮件地址以及我要分别在A,B和C中附加的文件的位置。 我代表这是我可以在下面最好的。 甲………………..乙………………Ç 名称………….电子邮件附件………… John Smith ….. a@b.com ….. Q:\ PLIU \ File1 Jane Smith ….. c@d.com ….. Q:\ PLIU \ File2 Jimm Smith ….. e@f.com ….. Q:\ PLIU \ File3 这是我到目前为止的代码,但我无法弄清楚如何将文件写入附件列,因为debugging给了我“找不到这个文件,validationpath和文件名是正确的。 Sub AttachSend() Dim objMail As Outlook.MailItem Dim intX As Integer Dim FileCount As Integer Dim MailAttachment As String Dim MailAddress […]

从Outlookmacros打开Excel时,不存在现有的macros

我在Outlook中有一个macros,我打开一个保存在桌面上的Excel文件。 一旦文件被打开,我想运行一个我用excel编写的macros,但是我的excelmacros都不可用。 每当我用其他方式打开excel时,macros都是可用的,并且当我通过outlook vba打开excel时,macros被启用。 我的问题是,当我通过Outlookmacros打开Excel时,如何使这些macros可用? 请参考下面的代码。 'Pre:None 'Post:Excel will have been opened, and the macro "CreatePowerPoint()" ' will have been run on the excel document Sub Gimba() Dim xlApp As Object, xlWkb As Object 'open excel Set xlApp = CreateObject("Excel.Application") xlApp.Visible = True ' can be False if you do not wont see reaction, ' […]

从Outlook电子邮件正文复制超链接,并导出到Excel或记事本

这是我正在寻找的: 我在Outlook中有20个不同的文件夹,每个都有相同的电子邮件正文结构和格式。 每个电子邮件正文有3至7个超链接我想要出口这些超链接之一(其容易识别,因为它有一个相同的开始/一个特定的单词内 – 不要紧,如果我们出口这个特定的超链接或全部因为我们可以稍后在Excel中编辑它们)。 我希望这些超链接被导出到excel表单元格中 我现在做什么: 我正在使用剪贴板去发送每封电子邮件。 右键单击复制链接,然后粘贴到记事本或Excel中。 让我知道如果你们有什么build议。 这将真正简化我的工作..当然还有其他可能寻找类似解决scheme的人。 问候, AA

excel VBA从excel中replaceOutlook OFT文件中的文本

在Excel中,我有三列: A: B: C: UserName UsermailAddress RecordToBeDeleted 我在Excel中使用下面的代码从Outlook(使用OFT文件)发送和电子邮件到Excel电子表格的B列中的每个电子邮件地址。 只要发送到列B中的每个电子邮件地址,我所使用的代码就可以工作 我RecordToBeDeleted的问题是,在电子邮件(OFT文件)中,我有两个关键字( UserName和RecordToBeDeleted ),我需要在与该邮件地址一起使用的每封电子邮件中进行replace。 代码findOFT文件中的两个关键字,但只删除它们或用空条目replace它们。 我做错了什么,以便我可以replaceOFT邮件中的excel文件中的单词。 我在Excel表中的VBA是: Sub RunEmails() Dim i As Integer Dim rngCell As Range For Each rngCell In Range("A2", "A" & CStr(Cells(Rows.Count, "A").End(xlUp).Row)) Call DoTest(rngCell.Offset(0, 1).Value, "JDoe@abc.com", rngCell.Offset(0, 2).Value, rngCell.Value) Next rngCell End Sub Sub DoTest(EmailAddress As String, CCAddress As String, RecordToBeDeleted As String, […]

在Outlook中使用与Google日历兼容的VBA满足请求

我打算在我的Excel中创build一个可以创build个人outlook会议邀请的macros,并以单个邮件中的.ics格式将邀请添加到先前包含在会议邀请中的收件人中,以便让他们select是否要邀请将其添加到他们的日历。 我有大约200个这样的邀请被发送,我使用一个谷歌邮件帐户添加到我的Outlook 2013为此。 该代码从电子表格中的表中挑选主题和收件人邮件ID(&Mail主体,现在我已经为简单起见删除)。 我写了一个代码,这个macros的工作正常,但这有一个问题。 通过Gmail帐户发送的此类邀请会自动添加到如此订阅的Google日历中。 但是,如此创build并邮寄的这些邀请会被添加,而不会将收件人/与会者/来宾列表导入到Google日历中。 在指定的date和时间,Google日历中添加了一个事件,会议的主体被导出到事件的“说明”字段,但“客户列表”显示为空! 然而,当我手动添加outlook的testing会议并从Outlook中发送邮件中的.ics文件时,Google日历会自动导入该事件,并将收件人列表也添加到其事件的宾客列表中。 我感到困惑的是: iCal文件的哪个属性捕获Google日历实际导入的收件人列表? 有没有替代的代码,将iCal文件保存到磁盘,可以使用Outlook新会议窗口中的“作为附件前转”工具? 我使用iCal文件中的VBA代码设置的提醒似乎不会影响Google日历中的会议。 我如何有效地使用这个或者这是只有Outlook认可的function? 以下是我的代码: Sub CalendarInvite() Dim Rng As Range, strFileName As String, strRecipient As String Dim strSubject As String, strBody As String Set myoutlook = CreateObject("Outlook.Application") For Each Rng In Range("tblData[Status]") If Rng = "To be Sent" Then Set myapt = myoutlook.CreateItem(olAppointmentItem) strSubject […]

从共享Outlook日历parsing约会

我正尝试通过Excel VBA为我们会议室的会议室创build一个匿名的时间表。 源数据存储在不同的Outlook日历(每个房间都有自己的),我可以通过Outlook的“共享日历”function访问它们。 我目前遇到的问题是完全自动化数据检索过程。 我还有一切工作正常,但是,它要求用户从一个小的popup窗口手动select(当前)五个不同的日历,这是相当烦人的。 我曾尝试使用GetDefaultFolder(olFolderCalendar).Items方法,但这似乎只适用于本地日历而不是从networking(Exchange)共享的日历。 有没有办法直接解决这些房间的日历,以便我可以自动化我的过程? 最好的祝福, daZza 这是我现在的代码,切入相关部分: Set olNS = olApp.GetNamespace("MAPI") For x = 1 To 5 Set myCalItems = olNS.PickFolder.Items With myCalItems .Sort "[Start]", False .IncludeRecurrences = True End With StringToCheck = "[Start] >= " & Quote(StartDate & " 12:00 AM") & " AND [End] <= " & Quote(EndDate & " […]

从outlook导入联系人组 – excel vba

我有以下代码从Outlook导入所有联系人。 Dim olApp As Outlook.Application Dim olNamespace As Outlook.Namespace Dim olFolder As Outlook.MAPIFolder Dim olConItems As Outlook.Items Dim olItem As Object Set olApp = New Outlook.Application Set olNamespace = olApp.GetNamespace("MAPI") Set olFolder = olNamespace.GetDefaultFolder(olFolderContacts) Set olConItems = olFolder.Items 'HERE IS THE PROBLEM I do not know how to do so that there are only contacts […]

从Outlook中插入行的边界在Excel中

我正在使用一个macros,当Outlook打开插入一些电子邮件的数据,在Excel中的行,我想添加一个边界到我的Excel中的行A范围到AE。 我正在使用intRow4来确定我的信息input的行地址。 所以我的代码看起来像这样,但我得到一个Dim Rng As Range的对象未定义的错误,因为我得到的感觉前景不支持它。 Const SHEET_NAME4 = "Statistics" excWks4 As Object, _ intRow4 As Integer, _ Set excWks4 = excWkb.Worksheets(SHEET_NAME4) intRow4 = excWks4.UsedRange.Rows.Count + 1 Dim Rng As Range Set Rng = ws2.Range("A" & intRow4 & ":AE" & intRow4 & "") With Rng.Borders .LineStyle = xlContinuous .Color = vbBlack .Weight = xlThin End […]

插入数组公式到Excel中使用VBA和引用从Outlook电子邮件导出的单元格值?

我在Outlook中使用vba代码将一些电子邮件正文中的文本导出到Excel中的下一个可用行中。 我也在隔壁的单元格中导出一个数组公式,所以在这个例子中,intRow4作为整数表示我的工作表中下一个可用的行。 在这个例子中,我下一个可用的行是第34行。因此,我们将描述文本从我们的电子邮件导出到excel中的单元格(D34),并且还将一个数组公式从excel插入到单元格(E34)中。 该公式是引用D34的索引查找公式,应查找单词的前5个字母,并将其与另一个工作表中的3个字母的代码进行匹配。 所以在我的其他工作表(工作表2)我有列中的数据列表 Description Other Other Other Other Code Hotels NFP Catering PLQ Travel LMC 所以在我的电子邮件中包含像Catering这样的描述文本的情况下,这将被导出到我的Excel单元格(D34),插入到(E34)中的公式应该通过引用单元格(D34)find相应的描述并将其与我在表2中的列。然后这应该在第6列产生3字母代码。在这种情况下,它将是PLQ 我的电子邮件中的我的说明文字如下所示 Description of Provisional Supplier: Catering 我的出口代码似乎工作正常,细胞D34填充我的电子邮件的描述文字。 公式在单元格E34中作为数组插入。 问题是我的公式不生产3字母代码,它显示#NUM! 错误。 但是,如果我进入我的单元格D34并将光标放在文本的左侧,然后按退格键并再次回车,则公式生成3个字母的代码。 我从描述string中删除空格和换行符,当它被导出到Excel中时,我无法解释为什么会发生这种情况。 有人可以告诉我哪里出错了,并告诉我如何我可以得到这个工作,而不必手动进入和编辑我的细胞的内容。 谢谢 Const SHEET_NAME4 = "Statistics" intRow4 As Integer, _ Set excWks4 = excWkb.Worksheets(SHEET_NAME4) intRow4 = excWks4.UsedRange.Rows.Count + 1 Dim l As String l = […]