Hallo Max,
naürlich könnte man an diesem Code noch einiges verbessern. Aber ich sag immmer: Solange das Makro das macht was es soll, ist das Ziel erreicht. In deinem Fall hast du halt lediglich zwei Makros, die du zu einem verschmelzen willst.
Sicher hast du in deinem Excel-Makro irgendwo ein Objekt definiert, mit dem du auf Word zugreifst. Sonst könntest du ja nicht den Text von Excel nach Word schreiben. Mit diesem Objekt musst du nun weiterarbeiten. Kopiere dazu den Word-Code an die gewünschte Stelle deines Excel-Makros und ersetze das Wort Selection durch ein Word-Range-Objekt. Wenn du z.B. eine Variable namens wdDoc hast, die auf das WordDocument zugreifst, dann musst du Selection durch wdDoc.Range ersetzen. Damit kannst du dann auf dessen Unterobjekte .Find, .Tables und .Borders sowie die Methode .ConvertToTable zugreifen. Ggf. musst du halt noch ein Table-Objekt zuHilfe nehmen. z.B. wdDoc.Range.Tables(1).Borders.
Wichtig: Beachte auch dass die wdKonstanten in Excel natürlich nicht existieren. Hier musst du dir zuerst deren Zahlen-Werte entweder aus dem Internet oder aus dem im VBA mitgelieferten Objektkatalog (F2) holen. Danach hast du die Wahl ob du z.B. wdLineStyleNone durch die Zahl 0 ersetzt oder ob du zu Beginn deines Excel-Makros diese Konstanten selbst definierst: z.B. mit Const wdLineStyleNone = 0
- ungetestet -
Gruß Mr. K.
|