Clever-Excel-Forum

Normale Version: Ausgewählter Text und Bild mit VBA in Word kopieren
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Liebes Clever-Excel-Forum,

leider komme ich momentan nicht weiter und bin gerade total am verzweifeln.

Ich würde gerne für eine Bürotätigkeit eine Excel-Tabelle anlegen, die Bilder und Texte enthält. Das entsprechende Bild und der entsprechende Text sollen dann durch auswählen bzw. anklicken der relevanten Zeile ausgewählt und mittels einer Schaltfläche in eine Word-Datei (Vorlagendatei) an eine bestimme Stelle kopiert werden. Die Stellen in der Word-Datei sollen über eine Textmarke positioniert werden.

Ich habe mich im Internet schon massiv durchgesucht und durch viel gebastel es schon soweit hinbekommen, dass es für den zuerst ausgewählten text und Bild bereits funktioniert. Leider funktioniert danach nur noch der Text und das Bild wird nicht mehr kopiert. Es wird auch ein Fehler in Excel angezeigt. Anbei lade ich die beiden Beispieldateien hoch. Ich wette, dass es daran liegt, dass ab Bild 2 die Word-Datei nicht mehr neugestartet sondern nur noch aktiviert werden muss. Leider bekomme ich nicht raus, was ich umschreiben muss, damit es funktioniert. Ich hoffe sehr, jemand von euch kann mir helfen. Über die Hilfe wäre ich sehr dankbar.

Über eine Antwort würde ich mich sehr freuen. Falls es Rückfragen gibt, beantworte ich die natürlich sehr gerne.

Beste Grüße

Peeeer

P.S.: Natürlich wäre es auch möglich anders als in der Beispieldatei nur eine Schaltfläche mit "nächstes Bild und Text kopieren" einzufügen. Doch hier weiß ich leider nicht, wie ich es anstelle, dass er die Bild- und Text-Nr. immer hochzählt bzw. auch beim ersten Mal die Word-Volage öffnet und dann nur noch in die Datei einfügt.
Hallo Peeeer,

erst mal nur zum Fehler. Selbiger kommt, weil Du im zweiten und dritten Makro kein Word-Objekt hast.

Im ersten Makro tust Du
'*** Word starten ***
Set appWord = CreateObject("Word.Application")

und am Ende beenden bzw. das Objekt auf Nothing setzen
Set appWord = Nothing

Im zweiten und dritten Makro verwendest Du nur appWord, ohne vorher Word mit CreateObject("Word.Application") zu starten oder, falls es offen und verwendbar ist, mit GetObject .. zu "übernehmen"..