VBOffice

Word-Makro in Outlook nutzen

Outlook hat keinen Makrorekorder, aber viele der in Word aufgezeichneten Makros können Sie auch in Outlook verwenden.

Zuletzt geändert: 06.09.2012 | Aufrufe: 75.744  | #95
◀ Vorheriges Beispiel Nächstes Beispiel ▶
ReplyAll ReplyAll
Mit diesem Addin für Outlook erhalten Sie in verschiedenen Situationen eine Warnung, bevor Sie auf eine Email versehentlich allen anderen Empfängern antworten.

Seit Outlook 2007 verwendet Outlook immer Microsoft Word als Email-Editor. Damit können Entwickler die mächtige Word-Bibliothek nutzen, um den Inhalt von Emails und anderen Elementen zu bearbeiten. Und noch besser: Word hat, im Gegensatz zu Outlook, einen Makrorekorder. Sie können also ein Makro in Word aufzeichnen und den gleichen Code auch in Outlook verwenden.

Ein Makro zeichnen Sie über das Entwickler-Tab in Word auf. Wenn Sie das nicht sehen, klicken Sie mit rechts aufs Menüband und wählen Sie Menüband anpassen. Wählen Sie in der rechten Liste dann Entwicklertools aus. Schließen Sie mit OK und klicken Sie unter Entwicklertools dann auf Makro aufzchn.

Im Beispiel habe ich in Word die Makroaufzeichnung gestartet, dann das Wort "Hallo" ins Dokument geschrieben und fett hervorgehoben. Der folgende Code zeigt das Ergebnis der Code-Aufzeichnung:


tip  So fügen Sie Makros in Outlook ein
Sub Makro1()
'
' Makro1 Makro
'
'
  Selection.TypeText Text:="hallo"
  Selection.MoveLeft Unit:=wdWord, Count:=1, Extend:=wdExtend
  Selection.Font.Bold = wdToggle
End Sub
Category-Manager Category-Manager
Mit dem Category-Manager können Sie Outlook Kategorien gruppieren, synchronisieren und filtern, neuen Emails automatisch die Kategorie des Absenders zuweisen und vieles mehr. Das Addin ist auch für IMAP geeignet.

Wie Sie sehen, benutzt Word das Selection-Objekt, um den Text im Dokument zu bearbeiten. Um den gleichen Code unverändert in Outlook verwenden zu können, muss nur eine Variable auf das Selection-Objekt der Email gesetzt werden.

(Setzen Sie zuerst über Extras/Verweise einen Verweis auf die "Microsoft Word x.0 Object Library", damit Outlook die Word-Objekte erkennen kann.)

Public Sub UseWord()
  Dim Ins As Outlook.Inspector
  Dim Document As Word.Document
  Dim Word As Word.Application
  Dim Selection As Word.Selection

  Set Ins = Application.ActiveInspector
  Set Document = Ins.WordEditor
  Set Word = Document.Application
  Set Selection = Word.Selection

  'hier können die makros aus word eingefügt werden

End Sub
OLKeeper OLKeeper
Der OLKeeper verhindert zuverlässig, dass Sie Microsoft Outlook unbeabsichtigt schließen und so etwa wichtige Emails verpassen würden.
email  Senden Sie eine Nachricht