Thema Datum  Von Nutzer Rating
Antwort
Rot VBA:Excel-Daten zu Word-Formularen dauert sehr lange
12.01.2014 21:37:15 Mario
NotSolved

Ansicht des Beitrags:
Von:
Mario
Datum:
12.01.2014 21:37:15
Views:
1571
Rating: Antwort:
  Ja
Thema:
VBA:Excel-Daten zu Word-Formularen dauert sehr lange

Guten Abend,

Ich habe ein kleines Problem,

Ich befülle in einer Word-datei einzelne Formulare mit Daten aus einer Excel-tabelle (Mit vba code, welcher durch einen Button in excel ausgelöst wird.)

Es handelt sich um ca. 180 Eintragungen. Das ganze dauert wirklich sehr lange (Minuten), und ich habe einen 8 Core Prozessor mit ja 2.2 GHz

Man kann beim ausfüllen der Formularfelder zuschauen... was kann ich besser machen?

hier ein auszug aus dem code:

 

Dim wrdApp, wrdDoc, Tabelle

On Error GoTo ErrorExit

Set Tabelle = Sheets(ActiveWorkbook.ActiveSheet.Name)
Set wrdApp = CreateObject("Word.Application")
wrdApp.Visible = True
Set wrdDoc = wrdApp.Documents.Open("C:\Users\Mario\Desktop\Arbeit\DzuZ.doc")


wrdDoc.FormFields("t1").Result = Sheets("Übergabe").Range("N" & 2).Text
wrdDoc.FormFields("t2").Result = Sheets("Übergabe").Range("N" & 3).Text
wrdDoc.FormFields("t3").Result = Sheets("Übergabe").Range("N" & 4).Text
wrdDoc.FormFields("t4").Result = Sheets("Übergabe").Range("N" & 5).Text
wrdDoc.FormFields("t5").Result = Sheets("Übergabe").Range("N" & 6).Text
wrdDoc.FormFields("t6").Result = Sheets("Übergabe").Range("N" & 7).Text
wrdDoc.FormFields("t7").Result = Sheets("Übergabe").Range("N" & 8).Text
wrdDoc.FormFields("t8").Result = Sheets("Übergabe").Range("N" & 9).Text
wrdDoc.FormFields("t9").Result = Sheets("Übergabe").Range("N" & 10).Text
wrdDoc.FormFields("t10").Result = Sheets("Übergabe").Range("N" & 11).Text
wrdDoc.FormFields("t11").Result = Sheets("Übergabe").Range("N" & 12).Text
wrdDoc.FormFields("t12").Result = Sheets("Übergabe").Range("N" & 13).Text
wrdDoc.FormFields("t13").Result = Sheets("Übergabe").Range("N" & 14).Text
wrdDoc.FormFields("t14").Result = Sheets("Übergabe").Range("N" & 15).Text
wrdDoc.FormFields("t15").Result = Sheets("Übergabe").Range("N" & 16).Text
wrdDoc.FormFields("t16").Result = Sheets("Übergabe").Range("N" & 17).Text
wrdDoc.FormFields("t17").Result = Sheets("Übergabe").Range("N" & 18).Text
wrdDoc.FormFields("t18").Result = Sheets("Übergabe").Range("N" & 19).Text
wrdDoc.FormFields("t19").Result = Sheets("Übergabe").Range("N" & 20).Text
wrdDoc.FormFields("t20").Result = Sheets("Übergabe").Range("N" & 21).Text
wrdDoc.FormFields("t21").Result = Sheets("Übergabe").Range("N" & 22).Text
wrdDoc.FormFields("t22").Result = Sheets("Übergabe").Range("N" & 23).Text
wrdDoc.FormFields("t23").Result = Sheets("Übergabe").Range("N" & 24).Text
wrdDoc.FormFields("t24").Result = Sheets("Übergabe").Range("N" & 25).Text
wrdDoc.FormFields("t25").Result = Sheets("Übergabe").Range("N" & 26).Text
wrdDoc.FormFields("t26").Result = Sheets("Übergabe").Range("N" & 27).Text
wrdDoc.FormFields("t27").Result = Sheets("Übergabe").Range("N" & 28).Text
wrdDoc.FormFields("t28").Result = Sheets("Übergabe").Range("N" & 29).Text
wrdDoc.FormFields("t29").Result = Sheets("Übergabe").Range("N" & 30).Text
wrdDoc.FormFields("t30").Result = Sheets("Übergabe").Range("N" & 31).Text
wrdDoc.FormFields("t31").Result = Sheets("Übergabe").Range("N" & 32).Text

'Beginn
wrdDoc.FormFields("v1").Result = Sheets("Übergabe").Range("O" & 2).Text
wrdDoc.FormFields("v2").Result = Sheets("Übergabe").Range("O" & 3).Text
wrdDoc.FormFields("v3").Result = Sheets("Übergabe").Range("O" & 4).Text
wrdDoc.FormFields("v4").Result = Sheets("Übergabe").Range("O" & 5).Text
wrdDoc.FormFields("v5").Result = Sheets("Übergabe").Range("O" & 6).Text
wrdDoc.FormFields("v6").Result = Sheets("Übergabe").Range("O" & 7).Text
wrdDoc.FormFields("v7").Result = Sheets("Übergabe").Range("O" & 8).Text
wrdDoc.FormFields("v8").Result = Sheets("Übergabe").Range("O" & 9).Text
wrdDoc.FormFields("v9").Result = Sheets("Übergabe").Range("O" & 10).Text
wrdDoc.FormFields("v10").Result = Sheets("Übergabe").Range("O" & 11).Text
wrdDoc.FormFields("v11").Result = Sheets("Übergabe").Range("O" & 12).Text
wrdDoc.FormFields("v12").Result = Sheets("Übergabe").Range("O" & 13).Text
wrdDoc.FormFields("v13").Result = Sheets("Übergabe").Range("O" & 14).Text
wrdDoc.FormFields("v14").Result = Sheets("Übergabe").Range("O" & 15).Text
wrdDoc.FormFields("v15").Result = Sheets("Übergabe").Range("O" & 16).Text
wrdDoc.FormFields("v16").Result = Sheets("Übergabe").Range("O" & 17).Text
wrdDoc.FormFields("v17").Result = Sheets("Übergabe").Range("O" & 18).Text
wrdDoc.FormFields("v18").Result = Sheets("Übergabe").Range("O" & 19).Text
wrdDoc.FormFields("v19").Result = Sheets("Übergabe").Range("O" & 20).Text
wrdDoc.FormFields("v20").Result = Sheets("Übergabe").Range("O" & 21).Text
wrdDoc.FormFields("v21").Result = Sheets("Übergabe").Range("O" & 22).Text
wrdDoc.FormFields("v22").Result = Sheets("Übergabe").Range("O" & 23).Text
wrdDoc.FormFields("v23").Result = Sheets("Übergabe").Range("O" & 24).Text
wrdDoc.FormFields("v24").Result = Sheets("Übergabe").Range("O" & 25).Text
wrdDoc.FormFields("v25").Result = Sheets("Übergabe").Range("O" & 26).Text
wrdDoc.FormFields("v26").Result = Sheets("Übergabe").Range("O" & 27).Text
wrdDoc.FormFields("v27").Result = Sheets("Übergabe").Range("O" & 28).Text
wrdDoc.FormFields("v28").Result = Sheets("Übergabe").Range("O" & 29).Text
wrdDoc.FormFields("v29").Result = Sheets("Übergabe").Range("O" & 30).Text
wrdDoc.FormFields("v30").Result = Sheets("Übergabe").Range("O" & 31).Text
wrdDoc.FormFields("v31").Result = Sheets("Übergabe").Range("O" & 32).Text

 

...usw.

 

 


MsgBox "Alle Felder erfolgreich eingefügt"

wrdDoc.Save
wrdDoc.Close

ErrorExit:
wrdApp.Quit

Set Tabelle = Nothing
Set wrdDoc = Nothing
Set wrdApp = Nothing


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
Rot VBA:Excel-Daten zu Word-Formularen dauert sehr lange
12.01.2014 21:37:15 Mario
NotSolved