Word-News & Downloads
Word-Helpline
Spotlight: Serienmails an Ihre Outlook-Kontakte komfortabel mit Word verschicken Weihnachtsgrüße in letzter Minute? Angebote, Rundschreiben, Preislisten und andere wichtige Ankündigungen sofort und ohne Porto verschicken? Der SmartTools Serienmailer für Word macht es möglich:
http://www.add-in-world.com/katalog/word-serienmailer/ Download-Tipp: Der kostenlose Format- und Konvertierungs-Assistent für Word Wenn Sie Texte aus E-Mails, von HTML-Seiten oder aus einer DOS-Datei direkt oder über die Zwischenablage in ein Word-Dokument einfügen, müssen regelmäßig Umlaute und Sonderzeichen umgesetzt, oder überflüssige Leerzeichen, Absatzendemarken und leere Zeilen gelöscht werden. Ähnlich sieht es bei HTML-Fragmenten aus: HTML-Tags sind zu entfernen und besondere Steuerzeichen durch Umlaute und Sonderzeichen zu ersetzen. In vielen Fällen müssen Sie dazu viele Male nacheinander die Suchen-/Ersetzen-Funktion von Word bemühen. Reduzieren Sie diesen Aufwand ab sofort auf wenige Mausklicks. Der kostenlose SmartTools Format- und Konvertierungs-Assistent kann Ihre Texte in Zukunft nahezu voll automatisch bereinigen:
News: Neue Version von Google Desktop Google hat sein kostenloses Desktop-Suchprogramm um zahlreiche neue Funktionen erweitert und bietet ab sofort die neue Version 3 zum Download an (die deutsche Fassung befindet sich allerdings noch im Betastadium): Google Desktop Einige Highlight der neuen Version:
So können Sie per VBA auf das Adressbuch von Outlook zugreifen Versionen: Word 2003, 2002/XP und 2000 Wenn Sie aus Ihren VBA-Makros auf das Outlook-Adressbuch zugreifen möchten, stoßen Sie schnell auf ein Problem: Für den Zugriff auf das Adressbuch stellt das Outlook-Objektmodell keine Möglichkeiten bereit. Um eine Adressauswahl zu realisieren ist deshalb ein Umweg über CDO (Collaboration Data Objects) notwendig. Dort steht eine Funktion "AddressBook" zur Verfügung, die als Ergebnis eine "Recipients"-Auflistung mit den gewählten Empfängern liefert. Voraussetzung für die Nutzung dieser Funktion ist zunächst, dass CDO auf dem System installiert ist. Prüfen können Sie das, indem Sie die VBA-Entwicklungsumgebung öffnen, dort das Menü Extras-Verweise anwählen und nach einem Eintrag "Microsoft CDO 1.2x Object Library" suchen. Ist der Eintrag nicht vorhanden, gehen Sie wie folgt vor, um CDO nachträglich zu installieren:
Um das Adressbuch für die Auswahl einer oder mehrere Adressen anzeigen zu lassen, geben Sie folgende Deklarationen und die Funktion "AddrBookTest()" in ein vorhandenes oder in ein neues Modul ein: Option Explicit Const txtTitel = "Word Weekly - AddrBookTest" Function AddrBookTest(OneAddress As Boolean) Dim objCDO As MAPI.Session Dim objRecs As MAPI.Recipients Dim strResult As String, strErr As String, I& On Error Resume Next AddrBookTest = "" 'Default: Nichts ausgewählt Set objCDO = CreateObject("MAPI.Session") objCDO.Logon "", "", False, False If Err <> 0 Or objCDO Is Nothing Then Beep MsgBox "Fehler bei Initialisierung " & _ "der CDO-Schnittstelle: " _ & Err.Description, _ vbOKOnly + vbExclamation, txtTitel GoTo Exit_Func End If With objCDO.Session Err = 0 Set objRecs = .AddressBook(Title:="Empfänger wählen:") DoEvents If Err <> 0 Then strErr = Err.Description If InStr(LCase$(strErr), "user_cancel") = 0 Then Beep MsgBox "Problem beim Aufruf des " & _ "Adressbuches (" & strErr & ")...", _ vbOKOnly + vbExclamation, txtTitel GoTo Exit_Func End If 'User_Cancel? End If 'Err<> 0... End With If objRecs Is Nothing Then Exit Function Err = 0 strResult = "" For I = 1 To objRecs.Count With objRecs.Item(I) strResult = strResult & _ Trim$(.AddressEntry.Name) & _ "|" & Trim$(.AddressEntry.Address) & vbCrLf End With If OneAddress And I = 1 Then Exit For Next I If Err <> 0 Then strErr = Err.Description Beep MsgBox "Problem bei der Übernahme der Adresse (" & _ strErr & ")...", _ vbOKOnly + vbExclamation, txtTitel Else 'letztes vbCrLf wieder raus strResult = Left$(strResult, Len(strResult) - 2) AddrBookTest = strResult End If Exit_Func: objCDO.Logoff Set objRecs = Nothing Set objCDO = Nothing End Function Diese Funktion initialisiert zunächst eine CDO-Session mit dem Standard-Profil, fängt dabei einen eventuell auftretenden Fehler ab und gibt diesen gegebenenfalls zur Kenntnis. Über diese Session kann dann die Funktion "AddressBook" aufgerufen werden, die als Ergebnis eine "Recipients"-Auflistung liefert. Eventuell auftretende Fehler untersuchen wir auf die Zeichenfolge "user_cancel", die einen Klick auf Abbrechen signalisiert. Alle anderen Fehler werden entsprechend per Meldung zur Kenntnis gegeben, bevor die Routine verlassen wird. Die Eigenschaft "Count" der "Recipients"-Auflistung gibt Auskunft, wie viele Einträge ausgewählt wurden. Dementsprechend gehen wir in einer Schleife alle Einträge durch und setzen diese zu einem Funktionsergebnis zusammen, das zeilenweise Namen und Adressen durch das Pipe-Zeichen "|" getrennt enthält. Wenn der Parameter "OneAddress" mit "True" angegeben war, verlassen wir die Schleife nach Bearbeitung des ersten Eintrages. Einen eventuell auftretenden Fehler, beispielsweise ausgelöst durch einen Klick auf Nein in der bei Zugriffen auf E-Mail-Adressen angezeigten Sicherheitsabfrage von Outlook, fangen wir entsprechend ab und zeigen diesen per Meldung an. Das Funktionsergebnis ist entweder eine Zeichenfolge wie zum Beispiel "Vorname Nachname|nachname@provider.de" (OneAddress= True), also eine Kombination aus dem Namen und der E-Mail-Adresse oder eine per "vbCrLf" getrennte Liste oben genannten Aufbaus (OneAddress= False). Um auf die einzelnen Einträge der Liste zuzugreifen, wandeln Sie sie zunächst per "Split" in ein Array um und zerlegen Sie dann anhand des Trenners "|" in Name und E-Mail-Adresse: Sub Test_1a() Dim strListe As String, X As Variant, I& Dim strName As String, strEMail As String strListe = AddrBookTest(False) X = Split(strListe, vbCrLf) For I = 0 To UBound(X) strName = Left$(X(I), InStr(X(I), "|") - 1) strEMail = Mid$(X(I), InStr(X(I), "|") + 1) Debug.Print strName, strEMail Next I End Sub Eine einzelne Adresse zerlegen Sie wie oben gezeigt per "Left$()" und "Mid$()" in Ihre Bestandteile: Sub Test_1b() Dim strAusw As String, strName As String, _ strEMail As String strAusw = AddrBookTest(True) strName = Left$(strAusw, InStr(strAusw, "|") - 1) strEMail = Mid$(strAusw, InStr(strAusw, "|") + 1) Debug.Print strName, strEMail End Sub War dieser Tipp für Sie hilfreich? Klicken Sie bitte hier!
Haben Sie Fragen zu Word 2003, 2002/XP, 2000 und 97? Dann wenden Sie sich mit einer genauen Problembeschreibung (bitte keine Dateien schicken!) an: word-helpline@smarttools.de Unser Redaktionsteam wählt in jeder Ausgabe eine oder mehrere Fragen aus und beantwortet Sie an dieser Stelle im Newsletter. Dateiname mit Pfad nur auf der letzten Seite ausgeben Versionen: 2003, 2002/XP, 2000 und 97 FRAGE: Es ist kein Problem, den aktuellen Dateinamen eines Dokumentes mit dem kompletten Pfad in der Fußzeile auszugeben kann. Ich möchte den Dateinamen samt Pfad aber nur auf der letzten Seite anzeigen. Gibt es dafür eine schnelle Lösung? R. Kern ANTWORT: Theoretisch könnten Sie dieses Problem über eine separate Fußzeilen-Definition nur für die letzte Seite lösen. Dazu müssten Sie aber einen entsprechenden Abschnittswechsel einfügen und die Fußzeile dann manuell konfigurieren. Schneller und komfortabler ist die Verwendung einer Feldfunktion, die die aktuelle Seitennummer prüft und dann den Dateinamen samt Pfad nur auf der letzten Seite ausgibt. In Word 2003, 2002/XP und 2000 sieht das dann folgendermaßen aus: {if { page }={ numpages } "{ filename \p }" } Für Word 97 verwenden Sie: {wenn { seite }={ anzseiten } "{ dateiname \p }" }
Nach Doppelklick im Windows-Explorer will Word die Datei wiederherstellen Versionen: Word 2003, 2002/XP, 2000 und 97 FRAGE: Wenn ich im Windows-Explorer ein Word-Dokument (DOC-Datei) per Doppelklick öffnen will, fragt mich Word seit kurzer Zeit immer erst, ob ich die Datei wiederherstellen möchte. Ich kann dann auf Ja oder Nein klicken, woraufhin die Datei ganz normal geladen wird. Versuche ich dagegen, die Datei aus Word heraus zu öffnen, erfolgt keine Abfrage zum Wiederherstellen. Können Sie mir sagen, wie ich diese unsinnige Fehlermeldung im Windows-Explorer abstellen kann? P. Wagner ANTWORT: Womöglich sind die Dateitypinformationen für Word-Dokumente beschädigt worden. In Ihrem Fall ist zum Beispiel die Aktion "Öffnen" ausschlaggebend. Im Windows-Explorer ist hinterlegt, welcher Befehl dafür benötigt wird. Ausgeführt wird der Befehl nach einem Doppelklick auf eine Datei mit der Endung .DOC. Sie können die Dateitypinformationen reparieren, indem Sie Word neu im System registrieren. Das erreichen Sie folgendermaßen:
in die Befehlszeile ein. Eine genaue Pfadangabe zur Word-Programmdatei WINWORD.EXE ist normalerweise nicht erforderlich, da sie im Systempfad steht.
War die Helpline für Sie hilfreich? Klicken Sie bitte hier!
Access-Tipps kostenlos per E-Mail SmartTools Access Weekly ist ein kostenloser wöchentlicher Newsletter mit interessanten Tipps für Anwender und Entwickler von Access 2003, 2002/XP, 2000 und 97:
Um SmartTools Word Weekly abzubestellen, senden Sie einfach das Kommando "unsubscribe" an die Adresse word-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.
|