Ich sehe ein seltsames Kategorisierungsverhalten in Outlook 2016 auf El Capitan.
In der Kategorieliste der GUI gibt es eine Kategorie namens "Kategorie1" mit der Farbe Rot. Wenn ich die GUI verwende, wird diese Kategorie korrekt angewendet.
Aber wenn ich AppleScript verwende, um die Bezeichnung „Kategorie1“ anzuwenden, wird eine andere Farbe angewendet, und es gibt kein Häkchen neben „Kategorie1“ in der GUI. Es ist, als gäbe es zwei Kategorien mit demselben Namen, und AppleScript und die GUI zeigen auf unterschiedliche Kategorien.
Hat das noch jemand gesehen, oder hat eine Lösung?
Danke.
Aktualisiert: Hier ist ein Codeausschnitt, der zeigt, wie ich AppleScript verwende. Beachten Sie auch, dass viele meiner Kategorien aus einer Windows-PST-Datei importiert werden.
tell application "Microsoft Outlook"
-- get the currently selected message or messages
set selectedMessages to current messages
-- if there are no messages selected, warn the user and then quit
if selectedMessages is {} then
display dialog "Please select a message first and then run this script." with icon 1
return
end if
repeat with theMessage in selectedMessages
set categoryList to get categories of theMessage
set cleanCategoryList to {}
set wasCategoryRemoved to 0
repeat with theCategory in categoryList
if name of theCategory is "Category1" then
set wasCategoryRemoved to 1
else
set end of cleanCategoryList to theCategory
end if
end repeat
if wasCategoryRemoved is 0 then
set end of cleanCategoryList to category "Category1"
end if
set categories of theMessage to cleanCategoryList
end repeat
end tell
Ich hatte genau das gleiche Problem. Ich konnte es lösen, indem ich die genaue Kategorie-ID anwendete, die ich wollte:
set end of theList to category id 33
Anstatt zu mögen:
set end of theList to category "Category1"
So habe ich die Kategorie-IDs erhalten. Ich habe in Outlook eine Nachricht ausgewählt, die nur die gewünschte Kategorie hatte, und dann dieses Skript manuell im Skript-Editor ausgeführt:
tell application "Microsoft Outlook"
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 theList to categories of aMessage
return theList
end repeat
end tell
Ich habe dann die zurückgegebene Kategorie-ID im folgenden Code verwendet, um Nachrichten in Zukunft dieser Kategorie zuzuweisen (ich habe dies im Laufe der Zeit aus vielen Quellen online zusammengeschustert, daher ist es für mich leider nicht einfach, den richtigen Leuten Anerkennung zu zollen):
tell application "Microsoft Outlook"
-- Workaround for Outlook 2016 Reminders window bug, part 1
set windowClosed to false
if "Reminder" is in (name of the front window) then
set windowClosed to true
close front window
end if
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 theList to categories of aMessage
set end of theList to category id 33 -- CHANGE THIS TO THE CATEGORY ID RETURNED IN THE PREVIOUS SCRIPT
set categories of aMessage to theList
end repeat
-- Workaround for Outlook 2016 Reminders window bug, part 2
if windowClosed is true then
tell application "System Events" to keystroke "9" using command down
end if
end tell
Ich hoffe, das hilft jemand anderem, der nach einer Lösung zum Hinzufügen einer Kategorie zu ausgewählten Outlook-E-Mails mit AppleScript sucht.
Eine große Verbesserung wäre, den ersten manuellen Schritt zum Abrufen der gewünschten Kategorie-ID zu entfernen und stattdessen das Festlegen der Kategorie über den Textnamen der Kategorie zuzulassen, alle vorhandenen Kategorien in Outlook zu durchlaufen, bis Sie sie finden, und diese ID dann auf die ausgewählte anzuwenden E-Mails. Ich wäre dankbar, wenn jemand meine Version auf diese Weise verbessern und teilen würde.
Hurston