News & Downloads
Outlook-Helpline
Spotlight: Outlook-Adressen ganz einfach nach Word übernehmen Der SmartTools Brief- und Fax-Manager reduziert das Erstellen eines neuen Briefes auf wenige Mausklicks. In Zukunft geben Sie keine Adresse mehr doppelt ein, denn Sie können auf Ihre Outlook-Kontakte oder Adressdaten in Access bzw. auf dem Exchange Server zugreifen. Den ganzen Vorgang steuern Sie bequem aus Word 2003, 2002/XP oder 2000:
http://www.add-in-world.com/katalog/briefman2003/ Download-Tipp: Über 1.000 neue Icons für Ihre Symbolleisten in Outlook Sie suchen nach aussagekräftigen Icons für Ihre selbst definierten Symbolleisten? Die standardmäßig von Outlook angebotene Auswahl ist sehr bescheiden und so müssen Sie schon selber künstlerisch tätig werden, um zum Ziel zu kommen. SmartTools Iconhelp hilft weiter: In Outlook finden Sie über 1.000 verschiedenen Schaltflächen-Symbole, die Sie mit unserem kostenlosen Tool übersichtlich anzeigen und durchblättern können. Damit Sie nicht den Überblick verlieren und jederzeit die wichtigsten Symbole wieder finden, können Sie auf Wunsch Stichworte zuordnen und die komfortable Suchfunktion einsetzen. Möchten Sie eines der Icons nutzen, klicken Sie es einfach an, rufen das Kontextmenü Symbol in Zwischenablage kopieren auf und weisen es dann Ihrer eigenen Schaltfläche zu. Der besondere Bonus für VBA-Entwickler: SmartTools Iconhelp für Outlook kann auch direkt aus der Entwicklungsumgebung gestartet werden und zeigt die "FaceID" zu jedem Symbol an, die Sie für die Erstellung von Symbolleisten per Makro benötigen. Das Gratis-Tool finden Sie unter der folgenden Adresse:
News: Google Desktop 2 mit verbesserter Outlook-Integration Wir haben bereits mehrfach über das kostenlose Tool Google Desktop Search zur schnellen Suche in Ihren Outlook-Mails und anderen Office-Daten auf Ihrer Festplatte berichtet. Google hat das nützliche Programm jetzt noch einmal erheblich erweitert und bietet zurzeit eine Betaversion (leider nur in Englisch) von Google Desktop 2 zum kostenlosen Download an: http://desktop.google.com Die Änderung des Namens durch das Weglassen des Zusatzes "Search" deutet schon an, dass sich die neue Version nicht mehr allein die Suche in Ihren lokalen Daten beschränkt. Eine der wichtigsten Neuerung besteht in einer so genannten "Sidebar", die sich fest auf dem Bildschirm positionieren lässt und eine Fülle von individuell konfigurierbaren Informationen anzeigen kann. So können Sie sich die letzten eingegangenen Mails aus Outlook (oder aus einem anderen Mailprogramm wie Thunderbird) oder Fotos als Slideshow anzeigen, aber auch aktuelle Informationen aus dem Internet (RSS-Feeds, Börsenkurse, Wetterdaten usw.) anzeigen lassen. Mit der Zeit wird es hier sicherlich ein umfangreiches Angebot von kostenlosen Erweiterungen für die Google Sidebar geben. Besonders interessant ist eine Symbolleiste direkt in Outlook, über die Sie ohne Umwege direkt im Programm nach Mails suchen können. Die Ergebnisse werden dabei auch nicht Browser, sondern in tabellarischer Form in einem separaten Fenster dargestellt, wie es beispielsweise auch LookOut anbietet. Google Desktop 2 kann außerdem jetzt nicht nur Outlook-Mails, sondern auch Termine, Aufgaben, Notizen und Kontakte durchsuchen. News: Aktualisierung des Junk-Mail-Filters von Outlook 2003 Auch August hat Microsoft den Junk-E-Mail-Filter für Outlook 2003 wieder aktualisiert. Das Update vom 22.8.2005 inklusive aller vergangenen Aktualisierungen finden Sie unter:
E-Mail-Inhalte ganz einfach an Excel und Word übergeben, Teil 2 Versionen: Outlook, Word und Excel 2003, 2002/XP, 2000 und 97/98 Im ersten Teil dieses Tipps der Woche waren wir auf die Problematik beim Zugriff auf E-Mails per VBA eingegangen und hatten verschiedene Zugriffsmethoden je nach Format der E-Mail und der Art des verwendeten Editors – HTML-Editor, Word-Mail, interner Outlook-Editor – aufgezeigt. Wir waren damit in der Lage, markierte Passagen oder komplette E-Mails auszulesen und in einer Variablen zur Verfügung zu stellen. Der zweite Teil zeigt nun aufbauend auf den im ersten Teil vermittelten Grundlagen die Realisierung eines Add-Ins für Outlook, das die Datenübergabe an Excel oder Word übernimmt. Bei Word ist zunächst zu prüfen, ob Word als E-Mail-Editor für Outlook definiert ist oder nicht. Diese Unterscheidung erweist sich als recht problematisch: Bei dem Versuch, mit "GetObject()" eine Referenz auf eine Instanz von Word zu erhalten, wird generell die unsichtbar laufende WordMail-Instanz als Ergebnis geliefert. Selbst wenn mehrere andere Dokumente geöffnet sind, ist ein gezielter Zugriff darauf nicht möglich, da Word die einzelnen Instanzen abkapselt. Die einzig praktikable Lösung besteht darin, die "Tasks"-Auflistung zu prüfen: Dort ist eine unsichtbar laufende WordMail-Instanz mit dem Namen "Microsoft Word" und "Visible = False" verzeichnet, während Dokumente im Format "Dokumentname – Microsoft Word" und "Visible = True" festgehalten werden. Eine Prüfung wie die folgende erlaubt dann beispielsweise die Aktivierung des ersten Dokumentes in der Tasks-Auflistung: For Each objTask In appWord.Tasks If InStr(objTask.Name, "- Microsoft Word") <> 0 And _ objTask.Visible Then objTask.Activate SendKeys strText, True bolFound = True Exit For End If Next objTask Da die Tasks-Auflistung keine verwertbare Referenz vom Typ "Word.Application", sondern auch nur wieder einen Verweis auf die unsichtbar laufende WordMail-Instanz liefert, kann hier nur mit "SendKeys" gearbeitet und der selektierte Text beziehungsweise die komplette Nachricht auf diesem Wege quasi als simulierte Tastatureingabe in das Dokument übertragen werden. In Verbindung mit Excel stellt sich dieses Problem nicht: Entweder läuft Excel bereits, so dass wir mit "GetObject()" eine direkt verwertbare Referenz erhalten, oder es läuft nicht, so dass wir mit "CreateObject()" eine neue Instanz starten können. Über die folgende Anweisung lässt sich der selektierte Text beziehungsweise die komplette Nachricht in die vorhandene, aktivierte Tabelle oder in eine gegebenenfalls neu angelegte Arbeitsmappe einfügen: With appExcel If .Workbooks.Count = 0 Then .Workbooks.Add End If .Visible = True .WindowState = xlMaximized .Windows(0).Activate .ActiveCell.Activate .Selection = strText End With Um nun eine Lösung auf dieser Basis in Outlook einzubinden, gehen Sie wie folgt vor:
Dim appWord As Word.Application Dim appExcel As Excel.Application Dim objWORDDoc As Word.Document Dim objHTMLDoc As MSHTML.HTMLDocument Dim objRange As IHTMLTxtRange Dim objInsp As Inspector Dim objMail As MailItem Dim strText As String Dim bolAnExcel As Boolean, bolFound As Boolean Dim objTask As Word.Task If Abs(GetKeyState(17) < 0) Then 'Strg gedrückt bolAnExcel = True Else bolAnExcel = False End If Über die API-Funktion "GetKeyState()" prüfen wir zunächst, ob die Strg-Taste gedrückt ist und setzen ein Kennzeichen für die spätere Übertragung. On Error Resume Next Set objMail = Application.ActiveInspector.CurrentItem If Err <> 0 Then Beep MsgBox "Das aktuelle Element ist keine Nachricht...", _ vbOKOnly + vbExclamation, "!!! Problem !!!" Exit Sub End If Dieser Bereich prüft das aktuelle Element – ist es keine Nachricht, geben wir eine entsprechende Meldung aus und verlassen die Routine. Set objInsp = ActiveInspector If objInsp.IsWordMail And objInsp.EditorType = _ olEditorWord Then Set objWORDDoc = objInsp.WordEditor Set appWord = objWORDDoc.Parent strText = appWord.Selection.Text ElseIf objInsp.EditorType = olEditorHTML Then Set objHTMLDoc = objInsp.HTMLEditor Set objRange = objHTMLDoc.Selection.createRange strText = objRange.Text ElseIf objInsp.EditorType = olEditorRTF Then strText = objMail.Body ElseIf objInsp.EditorType = olEditorText Then strText = objMail.Body End If Je nach Nachrichtenformat und Editortyp lesen wir hier den markierten Text oder die komplette Nachricht aus (zur Erinnerung: RTF und TXT im internen Editor unterstützt keine Markierungen...) und legen das Ergebnis in der Variablen "strText" ab. If bolAnExcel Then 'Text in Excel einfügen Abhängig vom eingangs gesetzten Kennzeichen fügen wir den Text dann in Excel oder Word ein. Err.Clear Set appExcel = GetObject(, "Excel.Application") If Err <> 0 Then 'Instanz starten... Err.Clear Set appExcel = CreateObject("Excel.Application") End If If Err <> 0 Then Beep MsgBox "Excel konnte nicht gestartet werden!", _ vbOKOnly + vbCritical, "!!! Problem !!!" Exit Sub End If Für die Übertragung an Excel versuchen wir hier zunächst über "GetObject()" eine Referenz auf ein bereits laufendes Excel zu erhalten. Ist das nicht möglich, starten wir über "CreateObject()" eine neue Instanz. Andernfalls geben wir eine entsprechende Meldung aus und verlassen die Routine. With appExcel If .Workbooks.Count = 0 Then .Workbooks.Add End If .Visible = True .WindowState = xlMaximized .Windows(0).Activate .ActiveCell.Activate .Selection = strText End With In diesem Bereich prüfen wir, ob eine Arbeitsmappe geöffnet ist und legen gegebenenfalls eine neue an. Die weiteren Anweisungen machen Excel dann sichtbar und holen das Programmfenster in den Vordergrund. Abschließend wird der ermittelte Text aus der Nachricht in die aktuelle Markierung bzw. in die aktivierte Zelle der Tabelle geschrieben. Else 'Text in Word einfügen bolFound = True Err.Clear Set appWord = GetObject(, "Word.Application") If Err <> 0 Then 'Instanz starten... Err.Clear Set appWord = CreateObject("Word.Application") Else 'Word läuft bereits... If Not appWord.Visible Then 'Instanz unsichtbar... 'Prüfen, ob ein Dokument vorhanden ist For Each objTask In appWord.Tasks If InStr(objTask.Name, "- Microsoft Word") <> _ 0 And objTask.Visible Then objTask.Activate SendKeys strText, True bolFound = True Exit For End If Next objTask If bolFound Then Exit Sub ' Job erledigt... Wie weiter oben bereits erläutert, stellt Word uns vor einige Probleme. In diesem Bereich handhaben wir den Umstand, dass Word eventuell als E-Mail-Editor läuft und prüfen die Tasks, ob parallel ein Dokument geöffnet ist. Wenn ja, aktivieren wir das entsprechende Fenster und übertragen den Text als Tastatureingabe. 'Word läuft versteckt, kein Dokument geöffnet Set appWord = CreateObject("Word.Application") End If 'Word läuft unsichtbar?... End If 'Word läuft nicht... If Err <> 0 Then Beep MsgBox "Word konnte nicht gestartet werden!", _ vbOKOnly + vbCritical, "!!! Problem !!!" Exit Sub End If Andernfalls versuchen wir, eine einsatzbereite Instanz zu starten. Misslingt das, wird eine entsprechende Fehlermeldung angezeigt und die Routine verlassen. 'Word läuft sichtbar, ggf. Dokument anlegen If appWord.Documents.Count = 0 Then appWord.Documents.Add 'Neues Dokument End If With appWord .Visible = True .Activate .Selection.TypeText strText 'In aktuelles Dokument End With End If 'bolAnExcel... End Sub Hier prüfen wir zuerst, ob ein Dokument geöffnet ist und legen gegebenenfalls ein neues an. Die weiteren Anweisungen machen Word dann sichtbar und holen es aktiviert in den Vordergrund. Abschließend wird der oben ermittelte Text aus der Nachricht an die aktuelle Cursorposition in das Dokument geschrieben. Um nach dem Sichern des eingegebenen Makros den Aufruf über ein Symbol im Nachrichtenfenster vornehmen zu können, gehen Sie wie folgt vor:
Haben Sie Fragen zu Outlook 2003, 2002/XP, 2000 und 97/98? Dann wenden Sie sich mit einer genauen Problembeschreibung (bitte keine Dateien schicken!) an: outlook-helpline@smarttools.de Unser Redaktionsteam wählt in jeder Ausgabe eine oder mehrere Fragen aus und beantwortet Sie an dieser Stelle im Newsletter. Übersichtlicher Terminkalender durch Farben Versionen: Outlook 2003 und 2002/XP FRAGE: Als ich noch mit einem handschriftlichen Terminplaner gearbeitet habe, habe ich mir die Orientierung mit farbigen Markierungen erleichtert. So fielen zum Beispiel Tagungen sofort durch grünen Textmarker auf, Besprechungen durch eine rote Kennzeichnung usw. Seitdem ich mit Outlook arbeite, suche ich vergeblich nach einem so praktischen Werkzeug. Gibt es keine Funktion zur farbigen Kennzeichnung von Terminen? V. Borgstedt ANTWORT: Wenn Sie noch nicht mit Outlook 2003 oder 2002/XP arbeiten, müssen Sie leider auf farbige Termine verzichten. Erst seit Outlook 2002/XP können Sie so genannte "Beschriftungen" festlegen, die den Termin gleich entsprechend einfärben. Um eine Farbe zuzuweisen, öffnen Sie den gewünschten Termin aus dem Outlook-Kalender. Im Terminfenster klappen Sie dann per Mausklick die Dropdown-Liste zum Feld Beschriftung auf. Anschließend wählen Sie einen der farbigen Einträge aus. Sobald Sie den Termin gespeichert haben, erscheint er mit der gewählten Farbe in der Terminübersicht. Falls Ihnen die Texte zu den Farben nicht gefallen, können Sie sie ändern. Dazu lassen Sie sich den Kalender in der "Tages-/Wochen-/Monatsansicht" anzeigen, - was meist ohnehin der Fall ist. Öffnen Sie dann das Menü Bearbeiten und wählen Sie Beschriftung sowie den Untermenübefehl Beschriftungen bearbeiten an. In einem Dialogfeld können Sie nun alle Bezeichnungen durch eigene Begriffe ersetzen.
Lesebestätigungen in einer Exchange Server-Arbeitsgruppe unterdrücken Versionen: Outlook 2003, 2002/XP und 2000 FRAGE: Mein Outlook ist an einen Exchange Server angeschlossen. Dabei stört mich, dass ich das Senden von Lesebestätigungen nicht unterdrücken kann, wenn ich E-Mails von internen Mitgliedern der Exchange Server-Arbeitsgruppe erhalte. Bei Mails von externen Absendern aus dem Internet funktioniert die Lesebestätigungs-Option Nie eine Antwort senden dagegen ohne Probleme. Wissen Sie, woran das liegt? R. Klingenberg ANTWORT: Vermutlich setzen Sie Outlook 2000 ein. In dieser Version lässt sich das Senden von Lesebestätigungen bei E-Mails aus der Exchange Server-Arbeitsgruppe nicht verhindern. Selbst wenn Sie per Extras-Optionen und nach Anwahl der Registerkarte Einstellungen und den Schaltflächen E-Mail-Optionen sowie Verlaufoptionen die Option Nie eine Antwort senden aktiviert haben, schickt Outlook 2000 immer eine Lesebestätigung an die Anwender, die an Ihren Exchange Server angeschlossen sind. Erst seit Outlook 2002 wirkt sich die genannte Programmoption auch auf interne Mails und nicht nur auf Nachrichten, die Sie über ein Internet-Konto erhalten, aus. Sie haben dann zusätzlich sogar die Möglichkeit, Lesebestätigungen nur auf Wunsch zu senden. Dazu aktivieren Sie die Option Das Senden einer Antwort vorher bestätigen.
Excel-Tipps kostenlos per E-Mail SmartTools Excel Weekly ist ein kostenloser E-Mail-Newsletter, der Ihnen jede Woche interessante Tipps rund um Excel 2003, 2002/XP, 2000 und 97 liefert:
Um SmartTools Outlook Weekly abzubestellen, senden Sie einfach das Kommando "unsubscribe" an die Adresse outlook-weekly-html-request@smarttools.de Bitte beachten Sie, daß das Kommando im Nachrichtentext stehen muß (nicht im Betreff) und Sie keine Mail im HTML-Format senden dürfen. Weitere Informationen zur Verwaltung der Liste erhalten Sie mit dem Kommando "help" an dieselbe Adresse.
|