标签: outlook-vba

如何从Outlook中的"收件人"字段中提取电子邮件地址?

我在某种程度上使用VBA,使用此代码:

Sub ExtractEmail()
Dim OlApp As Outlook.Application
Dim Mailobject As Object
Dim Email As String
Dim NS As NameSpace
Dim Folder As MAPIFolder
Set OlApp = CreateObject("Outlook.Application")
' Setup Namespace
Set NS = ThisOutlookSession.Session
' Display select folder dialog
Set Folder = NS.PickFolder
' Create Text File
Set fs = CreateObject("Scripting.FileSystemObject")
Set a = fs.CreateTextFile("c:\mydocuments\emailss.txt", True)
' loop to read email address from mail items.
For Each Mailobject In Folder.Items
   Email = Mailobject.To
   a.WriteLine (Email)
Next
Set OlApp = Nothing …
Run Code Online (Sandbox Code Playgroud)

email outlook vba text-files outlook-vba

7
推荐指数
2
解决办法
2万
查看次数

Outlook等待几秒钟然后执行

我在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)

vba outlook-vba

7
推荐指数
1
解决办法
4万
查看次数

尝试在Outlook中运行VBA脚本时"Sub或Function not defined"

作为创建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?

在Microsoft Outlook中运行 图1在Microsoft Outlook中运行"测试"宏

在此输入图像描述 图2"Sub或Function not defined"错误,后台有模块树

outlook vba outlook-vba

7
推荐指数
2
解决办法
15万
查看次数

从Outlook 2007中删除右键单击"打印上下文菜单"

当您右键单击带有VBA的电子邮件时,是否有任何方法可以从上下文菜单中删除"打印"项?

我永远都是右键单击以回复电子邮件,只是意外点击Print并让Outlook将其直接发送到打印机的速度比我可以停止的速度快.

替代文字

注意:我使用的是Outlook 2007.

outlook outlook-vba outlook-2007

6
推荐指数
2
解决办法
3983
查看次数

使用VBScript在Windows任务栏中显示新邮件图标

我最困难的时候是配置outlook以便在我想要的时候显示新的邮件消息图标.我有几个规则/过滤器设置,我不想显示,但他们总是这样做.我尝试了一切,但这不是我的问题.我发现一个好的解决方案是创建一个vbs脚本,调用我用来通知我的bash脚本.我在我的catch-all规则中调用此代码,并让所有其他规则提前退出.它工作得很好.但是,我真正喜欢的是在任务栏中显示新的邮件图标(信封).我真的不知道vb,vba,vbs.但如果有人可以在文件中发送我需要的代码,我很乐意尝试一下.谢谢!

outlook vba outlook-vba

6
推荐指数
2
解决办法
6945
查看次数

挂起联系人项目查询的Outlook通讯组列表

我正在使用MSDN上的一些教程来学习为Outlook制作一些宏.我有这个子程序挂起Type mismatch错误.在单步执行错误处理后Stop,Resume它将返回Next并完成查询.

查看立即中的结果集,缺少一个项目,这实际上是分发邮件列表而不是正常联系人.我将邮件列表从我的联系人中移出进行测试,但错误没有发生.

我也计划有其他邮件列表,因为这是为了工作.除了将它们保存在其他地方之外,是否有某种解决方法可以逃脱它?

这是代码:

Sub ContactName()

    On Error GoTo ErrHandler

    Dim ContactsFolder As Folder
    Set ContactsFolder = Session.GetDefaultFolder(olFolderContacts)
    MsgBox ("Contacts found: " & ContactsFolder.Items.Count)

    Dim Contact As ContactItem
    For Each Contact In ContactsFolder.Items
        Debug.Print Contact.CompanyName
    Next
    Exit Sub

ErrHandler:
    Debug.Print Err.Description
    Stop
    Resume

End Sub
Run Code Online (Sandbox Code Playgroud)

vba outlook-vba

6
推荐指数
1
解决办法
210
查看次数

自动将电子邮件签名插入Outlook会议邀请

我一直在网上寻找一种方法来做到这一点,但没有这样的运气.我的目标是将会议议程模板保存到电子邮件签名中,该签名将插入到我创建的每个会议邀请中.

寻找一些如何做到这一点的线索?

outlook vba outlook-vba outlook-addin

6
推荐指数
1
解决办法
1万
查看次数

解析Outlook收件人时选择多个条目的第一个条目

我有一个函数,它接受一个名称并在Outlook中解析它以返回所选名称的别名.如果通讯录中的所选名称有多个条目,则会失败.例如"Smith,Bob"和"Smith,Bob X".如果我试图解析的名称是"Smith,Bob X",则代码工作正常,但简单的"Smith,Bob"失败.

我假设当找到多个条目时,Outlook会打开"检查名称"对话框(当我手动解析名称时会出现这种情况).

当我的代码找到多个条目时,如何选择第一个条目?

Function GETTPX(ByVal UserName As String) As String
Dim objOL As Object
Dim oRecip As Outlook.Recipient
Dim oEU As Outlook.ExchangeUser
Dim oEDL As Outlook.ExchangeDistributionList

Set objOL = CreateObject("Outlook.Application")

Set oRecip = objOL.Session.CreateRecipient(UserName)
oRecip.Resolve
If oRecip.Resolved Then
    Set oEU = oRecip.AddressEntry.GetExchangeUser
End If
GETTPX = oEU.Alias

Set oRecip = Nothing
Set objOL = Nothing

End Function
Run Code Online (Sandbox Code Playgroud)

excel vba excel-vba outlook-vba

6
推荐指数
1
解决办法
697
查看次数

将现有任务窗格添加到新邮件 - Outlook

我有一个Outlook任务窗格,当您打开Outlook时打开,我已使用此方法添加此窗格.

https://msdn.microsoft.com/en-us/library/aa942846.aspx

我使用此处给出的示例显示并隐藏任务窗格:

https://msdn.microsoft.com/en-us/library/bb608590.aspx

因此,当用户点击切换按钮时,这适用于电子邮件.但是,我在Outlook的"新邮件消息"窗口中添加了另一个功能区控件,我希望同一个任务窗格也可以在该窗口的一侧使用.我设法创建另一个功能区控件(设计器)并添加了这个新按钮但是当我切换它时,它不会在新邮件消息窗口上打开任务窗格.它仅切换收件箱中可用的现有任务窗格窗口.

新邮件功能区控件的代码:

Imports Microsoft.Office.Tools.Ribbon
Imports Outlook = Microsoft.Office.Interop.Outlook
Imports Microsoft.Office.Tools

Public Class ComposeSidebarRibbon

    Private Sub ComposeSidebarRibbon_Load(ByVal sender As System.Object, ByVal e As RibbonUIEventArgs) Handles MyBase.Load

    End Sub

    Private Sub SidebarToggleButton_Click(sender As Object, e As RibbonControlEventArgs) Handles SidebarToggleButton.Click
        Globals.ThisAddIn.TaskPane.Visible = TryCast(sender, Microsoft.Office.Tools.Ribbon.RibbonToggleButton).Checked
    End Sub
End Class
Run Code Online (Sandbox Code Playgroud)

我该怎么做呢?

vb.net user-controls webusercontrol outlook-vba outlook-addin

6
推荐指数
1
解决办法
148
查看次数

引用不在默认收件箱下的文件夹

我尝试了无数种方法从超过14天的自定义文件夹“ Spam Digests”中删除项目。当我将该文件夹嵌套在的下面时,我已经成功完成了此操作,olDefaultFolder(Inbox)但是当我将其放在默认收件箱之外时,由于收到未找到的对象,因此无法引用它。

这是我所拥有的,我似乎无法弄清楚为什么在引用时找不到对象 "fldSpamDigest"

    Dim outapp As Outlook.Application
    Set outapp = CreateObject("outlook.application")
    Dim olitem As Object
    Dim fldSpamDigest As Outlook.MAPIFolder

    Set fldSpamDigest = outapp.GetNamespace("MAPI").Folders("Spam Digests")
    For Each olitem In fldSpamDigest.Items
        If DateDiff("d", olitem.CreationTime, Now) > 14 Then olitem.Delete
    Next

    Set fldSpamDigest = Nothing
    Set olitem = Nothing
    Set outapp = Nothing
Run Code Online (Sandbox Code Playgroud)

outlook vba outlook-vba

6
推荐指数
1
解决办法
2015
查看次数