Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
376to380
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
376to380
376to380
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Adressen und CO

Adressen und CO
05.02.2004 21:47:17
Stefan
Hallo liebe Excelfreunde,
ich habe in Excel eine Datenbank mit vielen meiner Kunden angelegt. Nun möchte mittels Makro die Daten in Word in Textfeld einfügen und drucken, danach soll sich der Vorgang wiederholen bis die zelle A120 zum beispiel leer ist, aber das bekomme ich dann wohl mit einer For Schleife hin. Nur das übertragen und einfügen in Word macht mir arge Probleme.Ich will letztendlich in Word meine Adressen auf eine Postkarte drucken zum verschicken.
PS: Noch eins, Wie kann in Excel sortieren? Ich habe Adressen mit NAmen, PLZ , Ort usw. Nun will ich nach PLZ sortieren. Wie mache ich es das die nach der Sortierung die namen usw auch mit der PLZ übereinstimmen?
Vielen Dank im Voraus , schöne Grüße Stefan

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Adressen und CO
05.02.2004 21:51:01
andre
hallo stefan,
zu 2.: alle zusammengehörigen spalten beim sortieren markieren
zu 1.: google: excel nach word site:herber.de bringt über 400 treffer
gruss andre
AW: Adressen und CO
05.02.2004 22:18:18
Ramses
Hallo
warum kompliziert und nicht einfach.
Erstelle doch in Word einfach einen Serienbrief mit deiner Kundentabelle als Datenquelle.
Aber wenns denn sein muss :-),..hier ein Ansatz den du sicher selber umstricken kannst:


Sub Word_Dokument_von_Excel_aus_steuern()
Dim myWord As Object
'Fehlerroutine für die Objectabfrage aktivieren
On Error Resume Next
'Abfragen einer besthenden WORD-Instanz um wiederholtes starten zu verhindern
'9 = Word 2000, 10 = Word XP
Set myWord = GetObject("Word.Application.10")
If Err.Number <> 0 Then
    'Fehlervariable leeren wenn Instanz noch nicht besteht
    Err.Clear
    'Zuweisung der Instanz
    Set myWord = CreateObject("Word.Application.10")
    'Instanz öffnen
    'Um das ganze etwas im Hintergrund laufen zu lassen
    'kann man den Status "wdWindowStateMinimize" verwenden
    myWord.Visible = True: myWord.WindowState = wdWindowStateMaximize
Else
    'Instanz besteht bereits
    myWord.Activate
    'Instanz in der Vordergrund bringen oder
    'mit "wdWindowStateMinimize" im Hintergrund ausführen
    myWord.Visible = True: myWord.WindowState = wdWindowStateMaximize
End If
'Hier muss der der Dateiname stehen der verwendet werden soll
'Es sollte aber eine Dokumentvorlage verwendet werden
'um keine Änderungen an den Textmarken beim einfügen zu verursachen
myWord.Application.Documents.Open "C:\Test.doc"
'Die Textmarken "a1, a2, a3" müssen im Dokument bereits bestehen
'Dann werden nach dem öffnen des Dokuments die Werte von Tabelle1
'A1, B1 und C1 in die jeweiligen Textmarken geschrieben
myWord.ActiveDocument.Bookmarks("a1").Range.Text = Worksheets("Tabelle1").Range("A1")
myWord.ActiveDocument.Bookmarks("a2").Range.Text = Worksheets("Tabelle1").Range("B1")
myWord.ActiveDocument.Bookmarks("a3").Range.Text = Worksheets("Tabelle1").Range("C1")
'oder nur immer die Daten aus der aktuell markierten Zeile
'myWord.ActiveDocument.Bookmarks("a1").Range.Text = Worksheets("Tabelle1").Cells(ActiveCell.Row,1)
'myWord.ActiveDocument.Bookmarks("a2").Range.Text = Worksheets("Tabelle1").Cells(ActiveCell.Row,2)
'myWord.ActiveDocument.Bookmarks("a3").Range.Text = Worksheets("Tabelle1").Cells(ActiveCell.Row,3)
'-
'Das aktive WordDokument drucken
myWord.ActiveDocument.PrintOut
'Dokument schliessen ohne speichern
myWord.ActiveDocument.Close savechanges:=False
'---
'Speichern mit fixem Namen
'myWord.ActiveDocument.SaveAs Filename:="DokumentName", FileFormat:=wdFormatDocument
'Speichern mit Variable
'myWord.ActiveDocument.SaveAs Filename:=Variable, FileFormat:=wdFormatDocument
'---
'WORD-Instanz schliessen
myWord.Application.Quit (True)
'Variable leeren
Set myWord = Nothing
End Sub

     Code eingefügt mit Syntaxhighlighter 2.5

Gruss Rainer
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige