使用Applescript为Mac类别分配Outlook?

时间:2013-07-26 17:09:26

标签: applescript outlook-2011

寻找问题的解决方案。不太喜欢在Outlook界面中如何使用所有鼠标移动和内容分配类别,那么如何使其与Applescript一起使用?

对于这个问题,我创建了这个Applescript,允许您为选定的邮件分配多个类别,然后将邮件移动到与邮件发送年份对应的文件夹中。

display dialog ("Enter Category...") ¬
    default answer "" buttons {"Tag & Move", "Tag", "Cancel"} default button "Tag & Move"
copy the result as list to {the myCategories, the myTagButton}

if myTagButton is "Cancel" then
    return
end if

--- Get comma separated string and convert to list
set old_delimiters to AppleScript's text item delimiters
set AppleScript's text item delimiters to {", "}
set category_list to text items of myCategories
set AppleScript's text item delimiters to old_delimiters

--- Set category to each item of list
tell application "Microsoft Outlook"

    --- The set category needs a special list to work with multiple tags...
    --- Create a list {category "tag1", category "tag2", ...}
    set my_categorylist to {}
    repeat with categoryitem in category_list
            set end of my_categorylist to category categoryitem
    end repeat

    --- apply the list of categories to all selected messages
    --- set category of (item 1 of (get current messages)) to my_categorylist
    set msgSet to current messages
    if msgSet = {} then
        error "No messages selected. Select at least one message."
        error -128
    end if
    repeat with aMessage in msgSet
        set category of (item 1 of aMessage) to my_categorylist
        --- Move the message if so told by first dialog
        --- I file by year, so get the date the message was sent and move it there
        if myTagButton is "Tag & Move" then
            set theDate to time sent of aMessage
            set theYear to year of theDate as string
            move aMessage to mail folder theYear
        end if
    end repeat
end tell

在对话框中输入的类别为“foo,bar”,不带引号。如果在运行之前不存在其中一个类别,则脚本将废弃。

1 个答案:

答案 0 :(得分:0)

我知道这是旧的,但脚本有一个小问题。

这一行:

copy the result as list to {the myCategories, the myTagButton}

参数向后,应该是

copy the result as list to {the myTagButton, the myCategories}

更有用的是根据 Outlook 中可用的类别从列表中选择类别。