【问题标题】:Creating and assigning tasks in Outlook from Excel从 Excel 在 Outlook 中创建和分配任务
【发布时间】:2016-02-28 23:44:14
【问题描述】:

我正在尝试在 Excel 中创建服务台工具,而我想让管理员轻松分配它们的方式是使用 Outlook 中的任务。

管理员将收到电子邮件,在 Excel 中填写一行,然后单击一个按钮在 Outlook 中打开一个新任务,并预先填写字段。然后他们会将电子邮件作为附件拖放。

但是,我正在尝试从电子表格中的值预填充分配给电子邮件地址。分配似乎不起作用,收件人也不起作用。有没有人有任何想法为什么不?这是我到目前为止的代码:

Dim OutApp As Outlook.Application
Dim OutTask As Outlook.TaskItem

 Set OutApp = CreateObject("Outlook.Application")
 Set OutTask = OutApp.CreateItem(olTaskItem)

 With OutTask
    .Assign = Cells(2, "G")
    .Subject = "Service Request" & Cells(2, "A")
    .StartDate = Cells(2, "H")
    .DueDate = Cells(2, "H") + Cells(2, "I")
    .ReminderTime = .DueDate - 1
    .Body = "Please see the attached email for a service request assigned to you."
    .Display
 End With

Set OutTsk = Nothing
Set OutApp = Nothing

End Sub

任何帮助将不胜感激!

【问题讨论】:

    标签: vba excel outlook


    【解决方案1】:

    在这里查看示例https://msdn.microsoft.com/en-us/library/office/ff869880(v=office.15).aspx 微软提供 分配是一种方法,您像使用属性一样使用它。 收件人是一个集合,所以你必须添加它们,你不能像属性一样分配它们 最后你还有拼写错误的OutTsk。当打开编程Option Explicit 时,我会理所当然地做这件事,这可以防止拼写错误的变量毁了你的一天。

    所以尝试这样的事情

    Sub tasks()
    Dim OutApp As Outlook.Application
    Dim OutTask As Outlook.TaskItem
    
    Set OutApp = CreateObject("Outlook.Application")
    Set OutTask = OutApp.CreateItem(olTaskItem)
    Dim myRecipient As Outlook.Recipient
    Set myRecipient = OutTask.Recipients.Add(Cells(2, "C"))
    myRecipient.Resolve
    
     If myRecipient.Resolved Then
        With OutTask
           .Subject = "Service Request" & Cells(2, "A")
           .StartDate = Cells(2, "H")
           .DueDate = Cells(2, "H") + Cells(2, "I")
           .ReminderTime = .DueDate - 1
           .Body = "Please see the attached email for a service request assigned to you."
           .Assign
           .Display
        End With
    End If
    Set OutTask = Nothing
    Set OutApp = Nothing
    
    End Sub
    

    【讨论】:

    • 太棒了,谢谢!但是,我在以下行中收到 438 错误,我似乎无法解决? Set myRecipient = OutTask.Recipients.Add(Cells(2, "C"))
    • 我假设您在单元格 C2 中有一个有效的收件人姓名?如果不是,则指定包含收件人信息的有效单元格。如果该单元格为空白,则此行将失败。
    • 我尝试在电子表格单元格和代码中都添加电子邮件地址和用户名,而无需参考电子表格。还是不行……
    • 您是否添加了对 Outlook 对象库的引用?您需要这样做才能使其正常工作。如果它不存在然后选择 并进入 点击复选标记然后确定添加它。要检查库以查看它支持的内容,请按 [F2],然后选择 并进入 Outlook 库进行检查。
    • 当然有。展望 15.0。我一直在研究浏览器,但看不出哪里出了问题……我肯定错过了一些简单的东西。
    猜你喜欢
    • 1970-01-01
    • 2015-12-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-11-27
    • 1970-01-01
    • 2017-04-02
    相关资源
    最近更新 更多