Thema Datum  Von Nutzer Rating
Antwort
Rot Daten aus rtf-Datei in Excel einfügen
25.05.2023 08:32:16 Gast2505
NotSolved
25.05.2023 12:10:21 Gast33225
NotSolved
25.05.2023 12:15:43 Gast80254
Solved
25.05.2023 15:41:07 Gast2505
NotSolved
25.05.2023 16:55:22 Gast37937
NotSolved
30.05.2023 10:50:19 Gast2505
NotSolved

Ansicht des Beitrags:
Von:
Gast2505
Datum:
25.05.2023 08:32:16
Views:
818
Rating: Antwort:
  Ja
Thema:
Daten aus rtf-Datei in Excel einfügen

Hallo zusammen,

ich bin ein blutiger Anfänger in VBA Programmierung und stehe vor ein Problem.

Es soll aus 3 Spalten einer Datei im rtf-Format Daten (Zahlen und Text) in drei bestimmte Spalten in eine Excel Datei (Worksheets("Ziel")), mittels einer Schaltfläche, importiert werden.

Da sich Excel und ein rtf-Format nicht gut verstehen *zwinkersmiley*, wird über den bereits geschriebenen VBA Code, die rtf-Datei erst in Word eingefügt und daraus die Daten zunächst in ein hinzugefügtes Arbeitsblatt (Worksheets(1)) in Excel eingesetzt, um letztendlich daraus kopiert und auf das richtige Worksheets("Ziel") importiert zu werden. 

Soweit zur Theorie, das Problem ist nun, dass es in der Excel Datei, wo sich das Worksheets("Ziel") befindet, noch mehrere Worksheets gibt.

Wie bereits geschrieben wird das Arbeitsblatt (Worksheets(1)), mit den Daten die importiert werden sollen, zunächst in die Excel Datei eingefügt und nach der Importierung der Daten, sollte es wieder verschwinden.

Jetzt werden aber nicht die Daten aus dem Worksheets(1) an der richtigen Stelle in Worksheets("Ziel") eingefügt, sondern aus dem ersten Arbeitsblatt in der Excel Datei, das aber nicht Tabelle1 heißt.

Wie muss ich den Code ändern, sodass die Daten nur aus dem temporär hinzugefügten Worksheets(1) berücksichtigt werden?

Ich hoffe ihr könnt mir helfen

So sieht der Code aus:

Sub Schaltfläche1_Klicken()
    Dim wdApp As Object
    Dim wdDoc As Object
    Dim sFile As String
    Dim fdDialog As FileDialog
    Set fdDialog = Application.FileDialog(msoFileDialogFilePicker)
    With fdDialog
        .Filters.Clear
        .Filters.Add "RTF-Dateien", "*.rtf", 1
        If .Show = -1 Then
            sFile = .SelectedItems(1)
            Set wdApp = CreateObject("Word.Application")
            wdApp.Visible = True
            Set wdDoc = wdApp.Documents.Open(sFile)

            wdApp.activedocument.Tables(2).Select   'zweite Tabelle wählen

            wdApp.Selection.Copy
            Worksheets.Add
            ActiveSheet.Paste
            wdApp.Quit
            Set wdDoc = Nothing
            Set wdApp = Nothing
            
            '***ANFANG Spalte A nach A7 kopieren
            Range("A2:A" & ActiveSheet.UsedRange.Rows.Count & "").Select
            Selection.Copy
            Worksheets("Ziel").Select
            Range("A7").Select
            Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
                                    :=False, Transpose:=False
            Worksheets(1).Select
            '***ENDE Spalte A nach A7 kopieren
            '***ANFANG Spalte B nach B7 kopieren
            Range("B2:B" & ActiveSheet.UsedRange.Rows.Count & "").Select
            Selection.Copy
            Worksheets("Ziel").Select
            Range("B7").Select
            Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
                                    :=False, Transpose:=False
            Worksheets(1).Select
            '***ENDE Spalte B nach B7 kopieren
            '***ANFANG Spalte C nach D7 kopieren
            Range("C2:C" & ActiveSheet.UsedRange.Rows.Count & "").Select
            Selection.Copy
            Worksheets("Ziel").Select
            Range("D7").Select
            Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
                                    :=False, Transpose:=False
            '***ENDE Spalte C nach D7 kopieren
            Application.DisplayAlerts = False
            Worksheets(1).Delete
            Application.DisplayAlerts = True
            
        End If
    End With
    Set fdDialog = Nothing
End Sub

 

 

 


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 Daten aus rtf-Datei in Excel einfügen
25.05.2023 08:32:16 Gast2505
NotSolved
25.05.2023 12:10:21 Gast33225
NotSolved
25.05.2023 12:15:43 Gast80254
Solved
25.05.2023 15:41:07 Gast2505
NotSolved
25.05.2023 16:55:22 Gast37937
NotSolved
30.05.2023 10:50:19 Gast2505
NotSolved