Ecxel (csv) über Makro in Word-Vorlage

Moderator: ModerationP

Ecxel (csv) über Makro in Word-Vorlage

Beitragvon RitterM » 09. Sep 2014, 09:03

Hallo,

leider komme ich bei meinem kleinen Problem nicht mehr weiter und finde online auch keine hilfreiche Lösung.
Ich denke, es ist einfacher als gedacht, stehe aber auf dem Schlauch!

Ich will in einer Word-Vorlage per CommandButton bestimmte Daten aus einer CSV-Datei automatisch einfügen.
Die Word-Vorlage verwendet Textmarken und die CSV-Datei ist schon zu einer reinen Excel Tabelle umgewandelt (d.h. A3 = ID, B3 = Kunde, ...)
Die gleichen Namen (ID, Kunde,...) werden in Word und Excel verwendet. Die Struktur der CSV-Datei ist immer identisch, es kann somit mit festen Adressen gearbeitet werden.

Ich benötige aber nicht alle Informationen aus der CSV-Datei, sondern nur bestimmte Felder.
z.B. A3 = ID, B3 = Kunde, G3 = Name, XY3 = ...


Mein Grundgedanke war, den Code für z.B. "ID" in eine Zeile zu packen, da ich ca. 10 verschiedene Textmarken ansprechen muss.
Code: Alles auswählen
ActiveDocument.Bookmarks("id").Text = Range("C:\Temp\ticket.csv""ticket!A3")


Und genau an dieser Stelle komme ich nicht weiter und hoffe auf eure Hilfe.
RitterM
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 22
Registriert: 23. Jul 2014, 12:58

Re: Ecxel (csv) über Makro in Word-Vorlage

Beitragvon Miss Marple » 09. Sep 2014, 10:29

Moin,

vielleicht denke ich jetzt zu einfach, aber: Wenn du in Excel die Daten (Spalten (?)) ausblendest, die du in Word nicht benötigst, tut es doch ein ganz normales Copy&Paste, oder? Dann brauchst du die ganzen Textmarken nicht.

Mehr gibt meine Kristallkugel auf die Entfernung nicht her ... du schreibt z.B. nicht, ob die Excel-Werte als Tabelle eingefügt oder an verschiedene Stellen im Word-Dokument 'verteilt' werden müssen. Aus deiner Frage geht auch nicht hervor, ob die weißt, wie man Excel Dateien aus Word öffnet, ob der CommandButton 'im Prinzip' schon existiert und funktioniert, etc., etc. So wird helfen schwierig :cry:

Gruß
MM
Miss Marple
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 1568
Registriert: 24. Jan 2014, 08:13
Wohnort: 52° 15' 53" N, 10° 31' 26" E

Re: Ecxel (csv) über Makro in Word-Vorlage

Beitragvon RitterM » 09. Sep 2014, 10:43

Hmm... Danke

Das Word-Formular soll über den CommandButton sich die entsprechenden Informationen aus Excel besorgen und in Word automatisch einfügen.
Die Daten für Word erhalte ich nur als eine CSV-Datei. In dieser Datei stehen Informationen drin, die ich aber für Word nicht benötige.

Mein Grundgedanke ist eine Automatisierung des Vorganges per Klick. Da das Word-Formular in der Finalen Version gesperrt ist, können dann nur noch die Textfelder bearbeitet werden.

Das Word-Dokument besitzt 4 verschieden Tabellen. In diesen Tabellen sind die einzelnen Felder mit Textfelder mit den entsprechenden Textmarken versehen.
Somit benötige ich nur eine Zuordnung von der Excel-Datei auf die entsprechende Textmarke in der Word-Datei. Das ganze soll aber, wie schon geschrieben, in der Word-Datei per Klick eingefügt werden.

Die Struktur der Excel-Datei ist immer dieselbe. In dieser Datei sind ca. 35 verschiedene Informationen und ich benötige ca. 10 für das Word-Dokument

Bis jetzt öffne ich per CommandButton2_Click das Excel-File und das entsprechende Arbeitsblatt.
Teste gerade folgende Code-Variante:
Code: Alles auswählen
ActiveDocument.Bookmarks("id").Range.Text = CStr(.Cells(1, 15).Value)
-> Leider erscheint dann ein Laufzeitfehler "6028": Bereich kann nicht gelöscht werden?!
RitterM
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 22
Registriert: 23. Jul 2014, 12:58

Re: Ecxel (csv) über Makro in Word-Vorlage

Beitragvon Miss Marple » 09. Sep 2014, 10:56

CStr(.Cells(1, 15).Value)


Damit meinst du sicher die Excel-Datei, oder? Word bezieht diese Zellangabe aber auf 'sich'. Du musst der Zeile schon den Bezug auf Excel mitgeben.

Da ich nicht weiß, welche Set X = XYZ Anweisungen du vorgenommen hast, kann ich dazu keinen konkreten Tipp geben.

Gruß
MM


P.S. Nix dagegen, an zwei Stellen (http://www.ms-office-forum.net/forum/showthread.php?t=313652) nachzufragen, nur ich warte dann lieber ab ...
Miss Marple
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 1568
Registriert: 24. Jan 2014, 08:13
Wohnort: 52° 15' 53" N, 10° 31' 26" E

Re: Ecxel (csv) über Makro in Word-Vorlage

Beitragvon RitterM » 09. Sep 2014, 11:08

Mein bisheriger Code:

Code: Alles auswählen
   Set oExcelApp = CreateObject("Excel.Application")
   Set oExcelWorkbook = oExcelApp.Workbooks.Open("C:\Temp\ticket.csv")   
   With  oExcelWorkbook.sheets("ticket")                             
     
ActiveDocument.Bookmarks("id").Range.Text = CStr(.Cells(1, 15).Value)


Ich denke einmal, dass es so funktioniert ... aber ...


Danke für den Zellenhinweis!
RitterM
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 22
Registriert: 23. Jul 2014, 12:58


Zurück zu Word Forum (provisorisch)

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 2 Gäste