MS-Office-Forum

Zurück   MS-Office-Forum > Microsoft Office > Microsoft Excel
Registrieren Forum Hilfe Alle Foren als gelesen markieren

Banner und Co.

Antworten
Ads
Themen-Optionen Ansicht
Alt 12.07.2019, 10:08   #1
mrcojanes
MOF User
MOF User
Standard VBA - Daten aus Word in Excel

Hallo zusammen,

ich versuche Daten aus einer Word Tabelle, bzw. die gesamte Tabelle in eine Excel Datei zu kopieren. Dazu habe ich einen Code im Internet gefunden. Allerdings scheint dieser relativ alt zu sein und mein Excel zeigt mir den Fehler "Benutzerdefinierter Typ nicht definiert". Hier mal der Code

Code:

Sub Test()
    Dim r As Row
    Dim cL As Cell
    Dim sPfad As String
    Dim sFile As String
    Dim appExcel As Object
    Dim sWorkbook As Object
    Dim i As Long
    Dim counter As Long
   
    'Pfad
    sPfad = "C:Temp"
    'Dateiname
    sFile = "Test.xls"

    'ExcelObject erstellen
    Set appExcel = CreateObject("Excel.Application")

    'neue ExcelDatei erstellen
    Set sWorkbook = appExcel.Workbooks.Add
   
    'Wordtabelle auslesen
    For Each r In ActiveDocument.Tables(1).Rows
        counter = counter + 1
        i = 0
        For Each cL In r.Cells
            i = i + 1
            'Wert aus Zelle nach Excel übertragen
            sWorkbook.ActiveSheet.Cells(counter, i) = Left(cL.Range.Text, Len(cL.Range.Text) - 2)
        Next
    Next
   
    'ExcelDatei speichern unter
    sWorkbook.SaveAs sPfad & "" & sFile
   
    'ExcelDatei schliessen
    sWorkbook.Close
 
    'ExcelObject löschen
    Set appExcel = Nothing
End Sub
Hat jemand eine Idee, wie ich eine Tabelle aus einem Word Dokument in eine Excel Datein kopieren kann?

__________________

Gruß
MrCojanes


Let us make my Karma great again!
mrcojanes ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 12.07.2019, 10:17   #2
Mase
MOF Profi
MOF Profi
Standard

Hi,

ich geh mal davon aus, dass das Ganze aus Word aus gemacht wird.
Falls ja, setz mal ein Application. davor.

Also:
Application.cL
Application.Row

__________________

gruß
Marco
Mase ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 12.07.2019, 10:24   #3
mrcojanes
Threadstarter Threadstarter
MOF User
MOF User
Standard

Stimmt! Der Plan war allerdings das ganze über Excel ablaufen zu lassen, da ich das ganze irgendwann automatisiert programmieren will.

__________________

Gruß
MrCojanes


Let us make my Karma great again!
mrcojanes ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 12.07.2019, 10:32   #4
Mase
MOF Profi
MOF Profi
Standard

Ok, da Du offensichtlich den Code nicht verteilen, sondern selbst anwenden willst, würde ich dir empfehlen, in diesem Projekt (ob nun aus Word oder Excel) im VBE die entsprechenden Verweise zu Word und/oder Excel zu setzen.

Somit hast Du die IntelliSense verfügbar.

Dadurch kannst DU auch anders Deklarieren.

Code:

 Dim appXL as Excel.Application 'brauchst nicht, wennst aus Excel gehst
 Dim appWD as Word.Application

 'Wenn Du nun appWD. eingibst, schlägt die dir IntelliSense die Methoden   und Eigenschaften von Word vor. Ist einfacher für Dich zum progammieren

'am Ende des Code
 set appWD = nothing

__________________

gruß
Marco
Mase ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 12.07.2019, 10:35   #5
mrcojanes
Threadstarter Threadstarter
MOF User
MOF User
Standard

Danke für den Input!

Code:

Sub wordtabelle()
Dim wb As Workbook
Dim sh As Worksheet
Set wb = ActiveWorkbook
Set sh = wb.ActiveSheet
Dim Btxt As Object

Set Btxt = CreateObject("Word.Application")
Btxt.Visible = True
Btxt.documents.Open "C:Users..."
Btxt.ActiveDocument.Tables(1).Range.Copy
Application.Goto sh.Cells(1, 1)
sh.PasteSpecial Format:="HTML", Link:=False, DisplayAsIcon:=False
Btxt.Quit
Set Btxt = Nothing
Set wb = Nothing
Set sh = Nothing
End Sub
Habe es jetzt so gelöst, trotzdem Danke Dir!

__________________

Gruß
MrCojanes


Let us make my Karma great again!
mrcojanes ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Ads
Antworten


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Besucher: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge anzufügen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

vB Code ist An.
Smileys sind An.
[IMG] Code ist An.
HTML-Code ist An.
Gehe zu


Alle Zeitangaben in WEZ +1. Es ist jetzt 04:49 Uhr.



Powered by: vBulletin Version 3.6.2 (Deutsch)
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.

Copyright ©2000-2018 MS-Office-Forum. Alle Rechte vorbehalten.
Copyright ©Design: Manuela Kulpa ©Rechte: Günter Kramer
Eine Verwendung der Inhalte in anderen Publikationen, auch auszugsweise,
ist ohne ausdrückliche Zustimmung der Autoren nicht gestattet.