Tag: 前景

VBA从Outlook导出某些数据到Excel运行,但什么都不产生?

选项显式 Sub CopyToExcel() Dim xlApp As Object Dim xlWB As Object Dim xlSheet As Object Dim olItem As Outlook.MailItem Dim vText As Variant Dim sText As String Dim vItem As Variant Dim i As Long Dim rCount As Long Dim bXStarted As Boolean Const strPath As String = "C:\Users\Rob\Documents\Excel\Excel.xlsx" 'the path of the workbook If […]

macros将excel电子邮件ID导出到Outlook分配列表

有没有办法编写一个macros从excel表导出电子邮件ID列到Outlook分配列表? 我希望每次都用新的发布列表replace旧的,macros是运行的。 以下是我一直在尝试的, Public Sub DistributionList() Dim objOutlook As New Outlook.Application Dim objNameSpace As Outlook.Namespace Dim objDistList As Outlook.DistListItem Dim objMail As Outlook.MailItem Dim objRecipients As Outlook.Recipients Set objNameSpace = objOutlook.GetNamespace("MAPI") Set objDistList = objOutlook.CreateItem(olDistributionListItem) Set objMail = objOutlook.CreateItem(olMailItem) Set objRecipients = objMail.Recipients objDistList.DLName = InputBox("Enter name of Distribution List") For i = 1 To […]

在Excelmacros中通过不同的filter选项循环

我只是想知道如何循环通过Excelmacros中的不同选项,并执行相同的操作。 我的操作是从Excel导出ID到Outlook分配列表。 我使用了下面的代码: Public Sub DistributionList() Dim objOutlook As New Outlook.Application Dim objNameSpace As Outlook.Namespace Dim objDistList As Outlook.DistListItem Dim objMail As Outlook.MailItem Dim objRecipients As Outlook.Recipients Set objNameSpace = objOutlook.GetNamespace("MAPI") Set objDistList = objOutlook.CreateItem(olDistributionListItem) Set objMail = objOutlook.CreateItem(olMailItem) Set objRecipients = objMail.Recipients ActiveSheet.Range("$A$1:$C$10").AutoFilter Field:=3, Criteria1:= _ "Team 1" objDistList.DLName = "Team 1" For i […]

无法根据主题search邮件

我正在尝试在Excel工作表中根据列中提到的列表search邮件。 下面是我写的VBA代码。 但它不工作。 请帮忙: Sub Test() Dim olApp As Outlook.Application Dim olNs As Namespace Dim Fldr As MAPIFolder Dim olMail As Variant Dim i As Integer Dim rng As Range Dim n As Variant Set olApp = New Outlook.Application Set olNs = olApp.GetNamespace("MAPI") Set Fldr = olNs.GetDefaultFolder("Test1" as OlDefaultFolders) 'Set rng = [D3:D10] n = […]

如果Outlook中的联系人不存在,则运行时错误

当我完成一项工作时,我会将它发送给某些人。 这取决于谁得到它的工作。 如果列表中的任何人离开,更改工作或有电子邮件更改代码将错误地说 运行时错误-2147467259(80004005),Outlook不能识别一个或多个名称 如果我手动复制列表中的电子邮件地址并将它们popup到Outlook中并发送,我会收到一封电子邮件,说用户不存在或已被更改。 我已经尝试在错误恢复下一个和错误转到。 我已经从引用中添加了MS Outlook 14.0对象库,SharePoint社会提供者,社会提供者扩展性和Outlook视图控制。 代码在.send上出错 Sub EMailer() Application.ScreenUpdating = False strfilepath = "\\DFZ70069\Data\199711009\workgroup\Res Plan Team\Performance Management\Specialised Reporting\Debit & Credit Reporting\Masters\Sent Reports\" strArea = "Recipients" '……………………………………………………………………………… 'Get list of recipients for email For Each cell In Worksheets("EMails").Range(sRange) If cell.Value = "" Then GoTo Continue strmaillist = strmaillist & cell.Value + ";" […]

在vba excel中parsingeml文件的正文

我的最终目标是在Excel vba中打开一个eml文件,并以一个string结束消息的正文,然后我可以使用它来search不同的参数。 我find了一个使用MailItem和一个Outlook应用程序的解决scheme,但是我在运行这个代码时遇到了错误: Set MyOutlook = New Outlook.Application Set x = MyOutlook.GetNamespace("MAPI") outlook2013年打开,但然后给我一个错误消息,说OLMAPI32.dll,然后崩溃。 最终,我收到错误429“ActiveX组件不能创build对象”。 我想这个错误的解决scheme或解决方法将eml文件的正文变成一个string。 我已经成功地通过使用此代码获取电子邮件的主题: Set objFSO = CreateObject("Scripting.FileSystemObject") Set objRegEx = CreateObject("VBScript.RegExp") objRegEx.Pattern = "^Subject:" Do Until objFile.AtEndOfStream strSearchString = objFile.ReadLine Set colMatches = objRegEx.Execute(strSearchString) If colMatches.Count > 0 Then Cells(i, n) = strSearchString i = i + 1 Exit Do End If […]

Python – 从电子邮件附件下载Excel文件,然后parsing它

编辑 – 更新我创build了一个可怕的黑客打开Excel文件,然后保存下来,然后打开Excel文件到pandas之前,相同的文件名。 这真是太可怕了,但我看不到任何其他方式来解决这个问题作为attachment.SaveFileAs创build和endian问题。 我有下面的代码,在我的Outlook中find一个电子邮件,然后将Excel文件下载到一个目录。 当我尝试打开文件parsing它并在我的脚本中使用它的另一部分时出现格式错误。 我知道这是由Python的保存方式,因为当我手动它的工作正常。 任何帮助不胜感激。 from win32com.client import Dispatch import email import datetime as date import pandas as pd import os outlook = Dispatch("Outlook.Application").GetNamespace("MAPI") inbox = outlook.GetDefaultFolder("6") all_inbox = inbox.Items val_date = date.date.today() sub_today = 'Hi' att_today = 'Net – Regional.xls' ## loop through inbox attachments for msg in all_inbox: yourstring = […]

VBA Outlook 2010.将特定的Outlook正文文本解压到excel

有几个post打开这个话题,但似乎没有完全做我所需要的。 我做了一些编程,但是我从来没有用过VBA。 每天我收到一系列包含以[Tk#*******]新请求(* = 7位数字)开始的主题行的一系列电子邮件,内容为10到50个,然后在正文中有一个表单看起来像这样: 主体 然后,我在Excel中设置了'用户名','G''公司','H'和'I'中的'Ticket'。 我想首先从主题中提取7位数的票号,并​​把它放在excel的“Ticket”字段中,然后从login字段中将“smithjoh”部分放在“用户名”中,然后将外部公司列入'公司',最后到期date为'有效期至'。 首先,我想知道这是否可能,因为它是提取数据的特定部分,如果有的话,如果有人可以帮助我做这个工作,将不胜感激。 我试图自己做,但是缺乏经验让我无能为力,不幸的是没有任何工作。 如果能这样做,它会帮助我很多,因为它会自动执行一个非常繁琐的手动任务。 谢谢,马克

在Outlook中编辑Excel中的单元格而不重新打开工作簿

我想使用VBA从Outlook编辑Excel中的单元格。 我想这样做: 我第一次运行macros,单元格A1是“1”。 我第二次运行macros,单元格A2是“1”。 我第三次运行macros,单元格A3是“1”。 。 。 当我第五次运行macros时,它将回到单元格A1,并将单元格A1的值从“1”增加到“2”。 Dim count As Integer: count = 1 Dim number As Integer: number = 1 Sub test() Dim xlApp As Object Dim xlWB As Object Dim xlSheet As Object On Error Resume Next Set xlApp = GetObject(, "Excel.Application") If Err <> 0 Then Set xlApp = CreateObject("Excel.Application") End […]

尝试使用VBA收集电子邮件统计信息时出错

我正在尝试编写一个VBA脚本来收集一天中共享邮箱的指标。 从本质上讲,我想要导出到Excel在一天中的不同时间检测到多less新的,发送和接收的邮件。 我正在使用下面的代码,但是当我尝试运行脚本时出现错误。 错误状态: “运行时错误”13“types不匹配” debugging将突出显示Next olMail的错误。 有没有人有任何想法是什么导致这个错误,或者如果我需要从这个方向从另一个方向? 此外,我不相信我有我的共享邮箱正确的设置,因为我的默认电子邮件不共享。 我怎么需要修改Application.GetNamespace("MAPI").GetDefaultFolder(olFolderInbox)的脚本来识别我需要它来阅读共享框? 我正在使用Outlook 2013。 Sub EmailStats() Dim olMail As MailItem Dim aOutput() As Variant Dim lCnt As Long Dim xlApp As Excel.Application Dim xlSh As Excel.Worksheet Dim flInbox As Folder Set flInbox = Application.GetNamespace("MAPI").GetDefaultFolder(olFolderInbox) ReDim aOutput(1 To flInbox.Items.Count, 1 To 4) For Each olMail In flInbox.Items If […]