Office: (Office 365) [Excel, VBA] Daten aus Excel-Bereich in Word Tabelle einfügen

Helfe beim Thema [Excel, VBA] Daten aus Excel-Bereich in Word Tabelle einfügen in Microsoft Excel Hilfe um das Problem gemeinsam zu lösen; Hallo zusammen, ich stehe im Augenblick vor folgendem Problem. Habe in einem Excelsheet einen Bereich (5 Spalten, 2 Zeilen) mit Daten, dessen Inhalt... Dieses Thema im Forum "Microsoft Excel Hilfe" wurde erstellt von denpei, 15. Juni 2023.

  1. denpei Neuer User

    [Excel, VBA] Daten aus Excel-Bereich in Word Tabelle einfügen


    Hallo zusammen,

    ich stehe im Augenblick vor folgendem Problem.

    Habe in einem Excelsheet einen Bereich (5 Spalten, 2 Zeilen) mit Daten, dessen Inhalt ich gerne in ein Word-Dokument in eine Tabelle (5 Spalten, 2 Zeilen) einfügen möchte. Hierzu verwende ich eine For-Schleife, die alle Daten aus dem Excel Sheet einsammelt, jedoch immer nur eine Spalte in der Tabelle im Word Dokument befüllt.

    Was mache ich falsch?

    Hier ist der gesamte Code.

    Danke im Voraus für eure Tipps.

    LG,
    denpei

    Code:
    Option Explicit
    
    Sub Export()
    
        'Name der Dokumentenvorlage
        Const stWordDocument As String = "Test_Word.docx"
    
        'Bibliothek aktivieren
        Dim wdApp As New Word.Application
        Dim wdDoc As Word.Document
        Dim wdCell As Word.Cell
        
        'Excel Objekte
        Dim wbBook As Workbook
        Dim wsSheet As Worksheet
        
        Dim lnCountItems As Long
        
        'Variable Device definieren
        Dim Device As Variant
        
        'Variablen-Bezüge definieren
        Set wbBook = ThisWorkbook
        Set wsSheet = wbBook.Worksheets("Tabelle1")
        Device = Tabelle1.Range("B10:F11").Value
        
        'Word-Datei öffnen
        Set wdApp = New Word.Application
        Set wdDoc = wdApp.Documents.Open(wbBook.Path & "\" & stWordDocument)
        
        'Daten aus Device Tabelle in Word einfügen
        lnCountItems = 1
        
        For Each wdCell In wdDoc.Tables(3).Columns(1).Cells
            wdCell.Range.Text = Device(lnCountItems, 1)
            lnCountItems = lnCountItems + 1
        Next wdCell
        
        'Bookmarks befüllen
        wdDoc.Bookmarks("Manu").Range.Text = Tabelle1.Range("B6").Value
        wdDoc.Bookmarks("MatN").Range.Text = Tabelle1.Range("B7").Value
        wdDoc.Bookmarks("MatN2").Range.Text = Tabelle1.Range("B7").Value
        wdDoc.Bookmarks("SW").Range.Text = Tabelle1.Range("B4").Value
        wdDoc.Bookmarks("Reg").Range.Text = Tabelle1.Range("B8").Value
        
        'Word-Datei abspeichern
        wdDoc.SaveAs2 ThisWorkbook.Path & "\\Anforderungen_Materialzugang_" & Tabelle1.Range("B6").Value & "_" & Format(Now, "yyyy-mm-dd_hhmm") & ".docx"
        
        'Word-Datei als PDF abspeichern
        wdDoc.ExportAsFixedFormat ThisWorkbook.Path & "\Anforderungen_Materialzugang_" & Tabelle1.Range("B6").Value & "_" & Format(Now, "yyyy-mm-dd_hhmm") & ".pdf", wdExportFormatPDF
        
        'Word-Datei schließen
        wdDoc.Close SaveChanges:=False
        
        'Word-Applikation schließen
        wdApp.Quit
    
    End Sub
    
     
    denpei, 15. Juni 2023
    #1
  2. Exl121150 Erfahrener User
    Hallo,

    ich nehme an, die Lösung des Problems liegt an dieser Code-Stelle:
    Code:
    '........
        Dim lnCol As Long, lnRow As Long
      
        'Daten aus Device Tabelle in Word einfügen
        For lnCol = 1 To UBound(Device, 2)
          lnRow = 1
          For Each wdCell In wdDoc.Tables(3).Columns(lnCol).Cells
              wdCell.Range.Text = Device(lnRow, lnCol)
              lnRow = lnRow + 1
          Next wdCell
        Next lnCol
    '.........
    

    und ich nehme an, dass es eine 2. Problemzone gibt (nur 1 Backslash zw.Pfad und Dateiname):
    'Word-Datei abspeichern
    wdDoc.SaveAs2 ThisWorkbook.Path & "
    \Anforderungen_Materialzugang_" & Tabelle1.Range("B6").Value & "_" & Format(Now, "yyyy-mm-dd_hhmm") & ".docx"
     
    Exl121150, 15. Juni 2023
    #2
    1 Person gefällt das.
  3. denpei Neuer User

    Herzlichen Dank für deinen Vorschlag. Gelöst habe ich es zwischenzeitlich wie folgt:

    Code:
    'Excel: Maschinenfreischaltung Daten sammeln
        With Tabelle1
            tblData1 = .Range("B18:F20")
        End With
     
        'Word: Tabelle Maschinenfreischaltung mit Daten füllen
        For j = 1 To 5
        i = 0
    
        For Each wdCell In wdDoc.Tables(3).Columns(j).Cells
            i = i + 1
            wdCell.Range.Text = tblData1(i, j)
            Next wdCell
        Next j

    Kurioserweise benötige ich hier tatsächlich "\\", da das Word-Dokument mit "\" ansonsten eine Ebene darüber gespeichert wird.
     
    denpei, 26. Juni 2023
    #3
Thema:

[Excel, VBA] Daten aus Excel-Bereich in Word Tabelle einfügen

Die Seite wird geladen...
  1. [Excel, VBA] Daten aus Excel-Bereich in Word Tabelle einfügen - Similar Threads - Excel VBA Daten

  2. Excel VBA / Daten kopieren wenn Liste auf x steht.

    in Microsoft Excel Hilfe
    Excel VBA / Daten kopieren wenn Liste auf x steht.: Hallo zusammen, ich habe ein PowerQuery, welches ich ca. 2 mal im Monat aktualisiere. Aus dem Query möchte ich gerne die Daten per Makro in ein anderes Arbeitsblatt kopieren. Dabei möchte ich...
  3. Excel VBA Userform Daten aus Tabelle Auslesen "sverweis"

    in Microsoft Excel Hilfe
    Excel VBA Userform Daten aus Tabelle Auslesen "sverweis": Hallo zusammen, ich lerne umständlich ein wenig VBA. Ich benötige mal einen Code von einem Profi, der mir Anregungen gibt zum Üben und Probieren. Eine Tabelle hat in Spalte A eindeutige numerische...
  4. VBA Daten in Array durch inputbox befüllen lassen

    in Microsoft Excel Hilfe
    VBA Daten in Array durch inputbox befüllen lassen: Hi zusammen, Ich hab mal wieder eine Excel VBA Frage. Kurz zur Erklärung: Ich erhalte von einem Kunden eine Datei mit wiederum seinen Kunden, die ein bestimmtes Produkt gekauft haben(den Sinn...
  5. Daten Kopieren aus einer zweiten Datei

    in Microsoft Excel Hilfe
    Daten Kopieren aus einer zweiten Datei: Ich weiss nicht ob dies Hier schon existiert. Leider habe ich noch nichts gefunden. Ich habe eine Excel Datei (Kunden Angaben) und eine zweite Datei (Mappe1). Wenn beide geöffnet sind kann ich aus...
  6. Excel VBA aus einem Formular Daten in eine geschlossen Arbeitsmappe zu übertragen

    in Microsoft Excel Hilfe
    Excel VBA aus einem Formular Daten in eine geschlossen Arbeitsmappe zu übertragen: Hallo, ich bräuchte mal eure Hilfe Ich habe ein Solaranlage, wo ich jede Woche neu Daten bekomme, die ich in der Arbeitsmappe SolarStrom 2020_01_01 speichere. Die Daten werden in eine Formular...
  7. Excel VBA Daten aus HTML Website laden ohne CreateObject("InternetExplorer.Applicatio

    in Microsoft Excel Hilfe
    Excel VBA Daten aus HTML Website laden ohne CreateObject("InternetExplorer.Applicatio: Hi, versuche Daten aus einer HTML Website zu laden. Leider kann ich diese nicht im Internet Explorer laden. Nun such ich ein Makro was die Daten ohne Internet Explorer laden kann....
  8. (Office 365) Excel VBA :: Date Picker

    in Microsoft Excel Hilfe
    (Office 365) Excel VBA :: Date Picker: Ich möchte einen Date Picker auf einer UserForm einbinden und habe über Extras --> Zusätzliche Steuerelemente das Control "Microsoft Date and Time Picker Control 6.0 (SP4)" getickt. Es ist...
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden