Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1420to1424
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
Inhaltsverzeichnis

Tabellenwerte in vorformatierte Tabelle in Word

Tabellenwerte in vorformatierte Tabelle in Word
29.04.2015 08:32:33
Marcel
Guten Morgen!
Ich nutze Excel 2010 unter Windows 7.
Gegeben ist eine Exceltabelle mit fester Spaltenanzahl, aber variabler Zeilenanzahl. Also etwa A1:G6 oder A1:G10.
Angestrebt ist ein Export der Daten in ein Worddokument.
Das Dokument ist selbst als große Tabelle aufgebaut, was hauptsächlich der Formatierung dient. Einige der Rahmenlinien sind im endgültigen Dokument ausgeblendet.
Userbild
Dort sollen die Daten in eine vorformatierte Tabelle übertragen werden, wobei die Zeilenanzahl zwischen 5 und 10 schwankt. Abhängig von der Zeilenanzahl sollen leere Zeilen in der Zieltabelle gelöscht werden.
Bisher hatte ich zum Übertragen der Werte in Word Textmarken genutzt, komme in diesem Fall jedoch an meine Grenzen. Denn
a) ich muss vorher den Bereich festlegen können, der kopiert werden soll. Ich wollte dies über eine Checkbox neben den Zeilen lösen. Je nachdem, welche Checkbox markiert wird, wird bis zu dieser Zeile kopiert.
b) da es sich um einen Kalibrierschein handelt, muss eine gewisse Formatierung in Word eingehalten werden. Wäre die Zeilenanzahl immer gleich, würde ich es "umständlich" über Textmarken lösen können. Geht aber leider nicht
Hier ist mein bisheriger Code zum Export der Daten und es müsste hier irgendwo eingefügt werden. Ich bin für jede Hilfe sehr dankbar!
LG
Marcel
Sub wordExcel()
Dim wrdApp, wrdDoc, Start, Maschinenwerte, B7500, B7500MB2, B7500MB3, Messmittel
On Error GoTo ErrorExit
Set Start = ThisWorkbook.Worksheets("START")
Set Maschinenwerte = ThisWorkbook.Worksheets("Maschinenwerte")
Set B7500 = ThisWorkbook.Worksheets("7500-1")
Set B7500MB2 = ThisWorkbook.Worksheets("7500-1 MB 2")
Set B7500MB3 = ThisWorkbook.Worksheets("7500-1 MB 3")
Set Messmittel = ThisWorkbook.Worksheets("MM")
Set wrdApp = CreateObject("Word.Application")
wrdApp.Visible = True
Set wrdDoc = wrdApp.Documents.Open("C:\Users\Marcel.Petzold\Desktop\Test Kalibrierdatei\B-013    _
_
_
_
Musterkalibrierschein.dotm")
'DKD
wrdDoc.FormFields("DKD1").Result = Start.Range("D104").Value
wrdDoc.FormFields("DKD2").Result = Start.Range("D105").Value
wrdDoc.FormFields("DKD3").Result = Start.Range("D106").Value
'Kalibrierverfahren
wrdDoc.FormFields("KALV1").Result = Start.Range("B100").Value
wrdDoc.FormFields("KALV2").Result = Start.Range("B101").Value
wrdDoc.FormFields("KALV3").Result = Start.Range("B102").Value
'Hauptdaten
wrdDoc.FormFields("BEARB").Result = Start.Range("I3").Value
wrdDoc.FormFields("GS").Result = Start.Range("C6").Value
wrdDoc.FormFields("DATK").Result = Start.Range("L3").Value
wrdDoc.FormFields("HST").Result = Start.Range("C3").Value
wrdDoc.FormFields("TYP").Result = Start.Range("C4").Value
wrdDoc.FormFields("SN").Result = Start.Range("C5").Value
wrdDoc.FormFields("AG").Result = Start.Range("I12").Value
wrdDoc.FormFields("ANR").Result = Start.Range("I13").Value
'Kalibriergegenstand
wrdDoc.FormFields("KMPMAX").Result = Start.Range("C16").Value
wrdDoc.FormFields("KMMEAS").Result = Start.Range("D16").Value
wrdDoc.FormFields("KMTYP").Result = Start.Range("C14").Value
wrdDoc.FormFields("KMHERST").Result = Start.Range("C13").Value
wrdDoc.FormFields("KMSN").Result = Start.Range("C15").Value
wrdDoc.FormFields("KMANZ").Result = Start.Range("C9").Value
wrdDoc.FormFields("KMANZ2").Result = Start.Range("D9").Value
wrdDoc.FormFields("KMANZ3").Result = Start.Range("F9").Value
'Messwerte Druckplatten
wrdDoc.FormFields("DPODIM").Result = Maschinenwerte.Range("D15").Value
wrdDoc.FormFields("DPOH").Result = Maschinenwerte.Range("E15").Value
wrdDoc.FormFields("DPOR").Result = Maschinenwerte.Range("G15").Value
wrdDoc.FormFields("DPOE").Result = Maschinenwerte.Range("F15").Value
wrdDoc.FormFields("DPUDIM").Result = Maschinenwerte.Range("D16").Value
wrdDoc.FormFields("DPUH").Result = Maschinenwerte.Range("E16").Value
wrdDoc.FormFields("DPUR").Result = Maschinenwerte.Range("G16").Value
wrdDoc.FormFields("DPUE").Result = Maschinenwerte.Range("F16").Value
'Adresse und Temperatur
wrdDoc.FormFields("KUNDSTR").Result = Start.Range("I15").Value
wrdDoc.FormFields("KUNDPLZ").Result = Start.Range("I16").Value
wrdDoc.FormFields("KUNDSTD").Result = Start.Range("K16").Value
wrdDoc.FormFields("KUNDLAND").Result = Start.Range("I14").Value
wrdDoc.FormFields("TEMP").Result = Start.Range("I5").Value
'Bereich und Klasse
wrdDoc.FormFields("RANGE").Result = Start.Range("E7").Value
wrdDoc.FormFields("RANGEFR").Result = Start.Range("C7").Value
wrdDoc.FormFields("RANGETO").Result = Start.Range("E7").Value
wrdDoc.FormFields("CLASS").Result = Start.Range("E8").Value
'Bezugsnormale
wrdDoc.FormFields("BNDEV1").Result = B7500.Range("A100").Value
wrdDoc.FormFields("BNDEV2").Result = B7500MB2.Range("A100").Value
wrdDoc.FormFields("BNDEV3").Result = B7500MB3.Range("A100").Value
wrdDoc.FormFields("BNTYP1").Result = B7500.Range("A101").Value
wrdDoc.FormFields("BNTYP2").Result = B7500MB2.Range("A101").Value
wrdDoc.FormFields("BNTYP3").Result = B7500MB3.Range("A101").Value
wrdDoc.FormFields("BNNR1").Result = B7500.Range("A102").Value
wrdDoc.FormFields("BNNR2").Result = B7500MB2.Range("A102").Value
wrdDoc.FormFields("BNNR3").Result = B7500MB3.Range("A102").Value
wrdDoc.FormFields("BNKALNR1").Result = B7500.Range("A103").Value
wrdDoc.FormFields("BNKALNR2").Result = B7500MB2.Range("A103").Value
wrdDoc.FormFields("BNKALNR3").Result = B7500MB3.Range("A103").Value
wrdDoc.FormFields("BNVAL1").Result = B7500.Range("A104").Value
wrdDoc.FormFields("BNVAL2").Result = B7500MB2.Range("A104").Value
wrdDoc.FormFields("BNVAL3").Result = B7500MB3.Range("A104").Value
'Hilfsmessgeräte
wrdDoc.FormFields("HMG1").Result = B7500.Range("A106").Value
wrdDoc.FormFields("HMGHST1").Result = B7500.Range("A107").Value
wrdDoc.FormFields("HMGTYP1").Result = B7500.Range("A108").Value
wrdDoc.FormFields("HMGNR1").Result = B7500.Range("A109").Value
wrdDoc.FormFields("HMG2").Result = B7500.Range("B106").Value
wrdDoc.FormFields("HMGHST2").Result = B7500.Range("B107").Value
wrdDoc.FormFields("HMGTYP2").Result = B7500.Range("B108").Value
wrdDoc.FormFields("HMGNR2").Result = B7500.Range("B109").Value
wrdDoc.FormFields("HMG3").Result = B7500.Range("C106").Value
wrdDoc.FormFields("HMGHST3").Result = B7500.Range("C107").Value
wrdDoc.FormFields("HMGTYP3").Result = B7500.Range("C108").Value
wrdDoc.FormFields("HMGNR3").Result = B7500.Range("C109").Value
wrdDoc.FormFields("HMG4").Result = B7500.Range("D106").Value
wrdDoc.FormFields("HMGHST4").Result = B7500.Range("D107").Value
wrdDoc.FormFields("HMGTYP4").Result = B7500.Range("D108").Value
wrdDoc.FormFields("HMGNR4").Result = B7500.Range("D109").Value
wrdDoc.FormFields("HMG5").Result = Start.Range("B104").Value
wrdDoc.FormFields("HMGHST5").Result = Start.Range("B105").Value
wrdDoc.FormFields("HMGTYP5").Result = Start.Range("B106").Value
wrdDoc.FormFields("HMGNR5").Result = Start.Range("B107").Value
'Messdaten übertragen
wrdDoc.FormFields("DATEN1").Result = Start.Range("H98").Value
wrdDoc.FormFields("DATEN2").Result = Start.Range("H98:N107").Value
MsgBox "Alle Felder erfolgreich eingefügt"
wrdDoc.Save
'wrdDoc.Close
ErrorExit:
'wrdApp.Quit
Set Tabelle = Nothing
Set wrdDoc = Nothing
Set wrdApp = Nothing
End Sub

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Tabellenwerte in vorformatierte Tabelle in Word
29.04.2015 11:10:29
Marcel
Falls Unklarheiten bestehen, würde ich es auch noch klarer formulieren können. Bei Bedarf. Ich hoffe, mir kann jemand helfen. Bin mit meinem bescheidenen Wissen am Ende...

AW: Tabellenwerte in vorformatierte Tabelle in Word
29.04.2015 12:56:38
fcs
Hallo Marcel,
grundsätzlich kann man die Zellen einer Wordtabelle über Zeile und Spalte ähnlich ansprechen wie in einer Exceltabelle.
Es ist aber sehr viel mühsehliger bei einer langen Tabelle mit vielen Zeilen die korrekte Zeile der Wordtabelle zu ermitteln in der man beginnen möchte Werte einzutragen.
Auch unterschiedlicher Spaltenaufbau durch Teilen/Verbinden von Zellen kann die Ermittlung der korrekten Spaltennumer erschweren.
In der ZIP-Datei findest du dein modifiziertes Makro in einer Exceldatei mit Beispieldaten und eine kleine Wordvorlage, die ich zum Testen verwendet hab. Das Verzeichnis der Wordvorlage im Makro musst du anpassen!.
https://www.herber.de/bbs/user/97361.zip
Gruß
Franz

Anzeige
AW: Tabellenwerte in vorformatierte Tabelle in Word
29.04.2015 13:59:10
Marcel
Vielen Dank, fcs!
Ich schaue es mir gleich an... LG aus Berlin

AW: Tabellenwerte in vorformatierte Tabelle in Word
30.04.2015 08:17:56
Marcel
Vielen Dank, fcs!
Ich schaue es mir gleich an... LG aus Berlin

311 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige