Die "benutzerdefinierte Aktion" dürftest du für deinen Fall vergessen können. Eine Aktion in Outlook ist z.B. "Antworten" und steht i.W. in Verbindung mit einem Ol-Formular. Eine solche Aktion kann u.a. auch deaktiviert werden, beispielsweise kann für ein best. Formular definiert sein, dass es nicht weiter geleitet werden kann. Eine benutzerdefinierte Aktion könnte z.B. ein best. benutzerdefiniertes Formular aufrufen
Wie einige Vorgänger bereits angedeutet haben, ist (ab Ol 2000) die "normale" VBA-Umgebung integriert.
Für den gewünschten Automatismus kannst du etwa auf das Ereignis "vor Senden eines Elements" zugreifen. Hierzu wäre unter "DieseOutlookSitzung" folgende einfache Ereignisprozedur nötig:
Private Sub Application_ItemSend(ByVal Item As Object, Cancel As Boolean)
Item.PrintOut
End Sub
Natürlich ist das nur das Prinzip, das auszubauen wäre, etwa zumindest um entspr. Abfragen. Der Nachteil dieses Weges ist, dass dies eben vor dem Senden greift, und somit das noch leere Feld „Gesendet am“ nicht mit ausgegeben wird. Ein analoges Ereignis "nach dem Senden" gibt es (verständlicherweise) nicht.
Denkbar wäre aber z.B. eine Routine, die etwa alle Elemente des Standardordners für gesendete Objekte druckt, die z.B. am aktuellen Tag gesendet wurden (oder bei denen etwa ein benutzerdefiniertes Feld „gedruckt“ noch leer ist). Eine solche Routine könnte auch in anderen Anwendungen, z.B. in einem Word-Dok verankert oder als eigenständiges Programm implementiert sein. Ol selbst muss dazu nicht aktiv sein. Um Vollautomatismus zu erreichen, könnte sie aber auch z.B. beim Beenden von Ol ablaufen. Mit einem Dreizeiler ist es allerdings nicht getan und – je nach gewünschter Flexibilität – wären doch einigermaßen Kenntnisse einer Programmiersprache sowie des Ol-Objektmodells erforderlich.