我每天发送大量电子邮件,往往无法跟踪哪些电子邮件实际得到回复.
有没有办法可以使用VBA脚本查看上周发送的所有邮件,并检查是否收到了回复?
具体而言,已发送的电子邮件的报告尚未从至少一个发送到的地址收到回复.
我知道一点Excel VBA,但我不知道从哪一个开始...或者甚至可能.
想法?
[问朋友,我个人鄙视Outlook]
我将编写一个VBA代码,该代码将根据某些条件从Outlook中检索电子邮件.我的问题是我必须在我的代码中表示某个文件夹(在下面的示例中,表示的文件夹是"PRE Costumer".我想从我的"收件箱"中查找所有电子邮件,或者更好地从所有outlook文件夹中查找问题是我的收件箱包含许多子文件夹(因为规则0.我的问题是我可能不知道所有的子文件夹名称(因为许多用户将使用宏,甚至有人可以在个人文件夹中有电子邮件) .
能否请您指教,有没有办法解决这个问题吗?
请让我知道,如果这个问题是模糊的(因为我是新人)
请找到我有问题的标有评论的行.
Sub GetFromInbox()
Dim olApp As Outlook.Application
Dim olNs As Namespace
Dim Fldr As MAPIFolder
Dim olMail As Variant
Dim i As Integer
Set olApp = New Outlook.Application
Set olNs = olApp.GetNamespace("MAPI")
'Below is the line I have problem with
Set Fldr = olNs.GetDefaultFolder(olFolderInbox).Folders("PRE Customer")
i = 1
x = Date
For Each olMail In Fldr.Items
If InStr(olMail.Subject, "transactions") > 0 _
And InStr(olMail.ReceivedTime, x) > 0 Then
ActiveSheet.Cells(i, 1).Value = olMail.Subject
ActiveSheet.Cells(i, 2).Value = …Run Code Online (Sandbox Code Playgroud) 计算机重置后,我想使用我的VBA宏for Outlook 2013.
在Outlook中,我收到错误消息:
"尝试验证VBA项目的签名时发生了错误.宏将被禁用."
因此,VBA编辑说:
"此项目中的宏已禁用.[..]"
我试过了:
开发人员 - >宏安全 - >(*)启用所有宏(不仅是数字签名)
使用定义证书
C:\Program Files (x86)\Microsoft Office\Office15\selfcert.exe
Run Code Online (Sandbox Code Playgroud)没有任何效果.任何的想法?
我第一次运行它时,下面的代码运行正常,但是当我需要第二次运行它时,它给了我这个错误:
运行时错误'462':远程服务器计算机不存在或不可用
它不会一直发生,所以我认为它与Word(不)在后台运行有关...?我在这里错过了什么?
Sub Docs()
Sheets("examplesheet").Select
Dim WordApp1 As Object
Dim WordDoc1 As Object
Set WordApp1 = CreateObject("Word.Application")
WordApp1.Visible = True
WordApp1.Activate
Set WordDoc1 = WordApp1.Documents.Add
Range("A1:C33").Copy
WordApp1.Selection.PasteSpecial Link:=False, DataType:=wdPasteRTF, _
Placement:=wdInLine, DisplayAsIcon:=False
Application.Wait (Now + TimeValue("0:00:02"))
WordDoc1.PageSetup.TopMargin = CentimetersToPoints(1.4)
WordDoc1.PageSetup.LeftMargin = CentimetersToPoints(1.5)
WordDoc1.PageSetup.BottomMargin = CentimetersToPoints(1.5)
' Control if folder exists, if not create folder
If Len(Dir("F:\documents\" & Year(Date), vbDirectory)) = 0 Then
MkDir "F:\documents\" & Year(Date)
End If
WordDoc1.SaveAs "F:\documents\" & Year(Date) & "\examplename " & …Run Code Online (Sandbox Code Playgroud) 我在网络共享上有一个.dotm模板文件.有些宏引用了Word,Office和Outlook对象库.我们使用两个不同的平台,Windows XP和Windows 7,以及Microsoft Office 2007和Office 2010.当用户打开模板文件时,Word和Office的引用会自动调整(也就是说,它们被设置为Microsoft Word 12对象)库或Microsoft Word 14对象库根据需要),并且宏运行没有问题.
Microsoft Outlook对象库从版本12到14正常切换.它无法从版本14正确切换到12.在这种情况下,它会给出找不到库的错误.这是一个错误吗?有解决方法吗?我忽视的东西?
我安排与3-4个"忙碌"的人会面.使用Scheduling Assistant检索和更新可用时间可能很繁琐.
我正在尝试创建一个Excel宏(Outlook打开),以根据提供的电子邮件地址查看可用时间.
如果日期已知(已完成),此宏将创建会议.如果日期未知,我需要将每个人都可以免费的日期打印到电子表格中.
所有用户都在同一台服务器上.
Sub GetFreeBusyInfo ()是我需要帮助的地方.
1.它可以打印个人可用性 - 但我需要整个组的忙/闲信息
2.如何在"07/01/2013 3:00 - 4:00 PM EST"格式中显示结果?
Option Explicit
Sub CheckAvail()
Dim myOutlook As Object
Dim myMeet As Object
Dim i As Long
'Create the Outlook Session
Set myOutlook = CreateObject("Outlook.Application")
'Create the AppointmentItem
Set myMeet = myOutlook.CreateItem(1)
myMeet.MeetingStatus = 1
i = 23
'Start at row 23
If Cells(i, 11) <> "" Then
'Add Recipients
Do Until Trim(Cells(i, 10).Value) = ""
'Add all recipients
myMeet.Recipients.Add Cells(i, …Run Code Online (Sandbox Code Playgroud) 我在Outlook 2010中有一个简单的VBA代码,可以自动打印任何传入的电子邮件.
此脚本设置为每次通过规则进入电子邮件时运行.
这是代码:
Sub printradu(Item As Outlook.MailItem)
MessageAndAttachmentProcessor Item, True
End Sub
Run Code Online (Sandbox Code Playgroud)
如何使此脚本等待10秒然后执行它.我需要这样的东西:
Sub printradu(Item As Outlook.MailItem)
'Wait 10 seconds then execute the code below:
MessageAndAttachmentProcessor Item, True
End Sub
Run Code Online (Sandbox Code Playgroud) 在工作中我使用Microsoft Outlook,并且我已经用完了Outlook规则的空间.
我正在尝试创建一个VBA程序,它会在我收到它时检查我的电子邮件,如果主题中有一个带有指定字符串的电子邮件,它将删除它.
这是我试图编码但我无法让它工作:
Public Sub process_email(itm As Outlook.MailItem)
Dim new_msg As MailItem
If new_msg.subject Like "*keyword*" Then
new_msg.Delete
End If
End Sub
Run Code Online (Sandbox Code Playgroud) 我在Outlook中有一个过程,它将所有已保存的消息发送到Drafts文件夹中.
以下是代码:
Public Sub SendMail()
Dim olApp As Outlook.Application
Dim olNS As Outlook.NameSpace
Dim olFolder As Outlook.MAPIFolder
Dim olDraft As Outlook.MAPIFolder
Dim strfoldername As String
Dim i As Integer
Set olApp = Outlook.Application
Set olNS = olApp.GetNamespace("MAPI")
Set olFolder = olNS.GetDefaultFolder(olFolderInbox)
strfoldername = olFolder.Parent
Set olDraft = olNS.Folders(strfoldername).Folders("Drafts")
If olDraft.Items.Count <> 0 Then
For i = olDraft.Items.Count To 1 Step -1
olDraft.Items.Item(i).Send
Next
End If
End Sub
Run Code Online (Sandbox Code Playgroud)
以上代码工作正常.
题:
我想用它Task Scheduler来指定这个程序.
1.我将把程序放在Outlook,Module或ThisOutlookSession中?
2.我不擅长,vbscript所以我也不知道如何编写代码来调用Outlook程序.我已经完成了调用Excel Procedure但Outlook不支持 …
作为创建VBA脚本以将当前选定图像的大小调整为100%x 100%的第一步,我试图在http://msdn.microsoft.com/en-us/library/ee814736(v)中重现该示例= office.14).aspx.宏非常简单:
Sub Test()
MsgBox ("Hello world")
End Sub
Run Code Online (Sandbox Code Playgroud)
VBA脚本只是在"Project1"中创建,默认情况下会在按下Alt + F11时打开.但是,在尝试运行VBA脚本时,我不断收到错误"Sub或Function not defined"(图1和图2).
如何使VBA脚本"可访问"Outlook?
图1在Microsoft Outlook中运行"测试"宏
图2"Sub或Function not defined"错误,后台有模块树
outlook-vba ×10
vba ×9
outlook ×4
excel ×3
excel-vba ×3
outlook-2007 ×3
email ×2
certificate ×1
outlook-2010 ×1
outlook-2013 ×1
vbscript ×1
word-vba ×1