Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
Anzeige
Archiv - Navigation
1676to1680
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

Laufzeitfehler 52 beim einlesen von Textdateien

Laufzeitfehler 52 beim einlesen von Textdateien
19.02.2019 16:51:58
Textdateien
Schönen Guten Tag,
ich versuche gerade mehrere Textdateien in Excel einzulesen. Dabei soll eine Textdatei pro Zeile in Excel auftauchen. Sprich die erste Textdateizeile taucht in der ersten Spalte, die zweite Textdateizeile in der zweiten Spalte etc..
Das funktioniert auch soweit, jedoch bekomme ich bei der Textdatei 513 immer ein Laufzeitfehler. Hier ist laut Internet ein Limitation durch Excel gesetzt(Array Limit). Kann mir jemand helfen und ein Tipp geben wie ich dieses Limit umgehen kann?
Hier der Code:
_____________________________
Sub TXTimportieren()
'Importiert den Inhalt der Textdateien Zeilenweise
'Variablen definieren
Dim Pfad As String
Dim PDFDateipfad As String
Dim Dateiname As String
Dim Dokumentenindex As Long
Dim AnzahlDateien As Integer
Dim Zeile As Integer
Dim Inhalt As String
'Pfad definieren
Pfad = ActiveWorkbook.Worksheets("Menü").Range("C11").Value
'AnzahlDateien aus Menü
AnzahlDateien = ActiveWorkbook.Worksheets("Menü").Range("H7").Value
'Tabellenblatt aktivieren&bereinigen
ThisWorkbook.Worksheets("Import").Activate
ActiveSheet.Columns("A:XX").Delete
'Startwerte zuweisen
For Dokumentenindex = 1 To AnzahlDateien
Zeile = 1
Dateiname = ActiveWorkbook.Worksheets("Übersicht").Range("C" & Dokumentenindex).Value
PDFDateipfad = ActiveWorkbook.Worksheets("Übersicht").Range("A" & Dokumentenindex).Value
ActiveSheet.Cells(Dokumentenindex, 1) = PDFDateipfad
'Quelldatei ansprechen
Quelldatei = Pfad & "\" & Dateiname
'Quelldatei öffnen
Open Quelldatei For Input As #Dokumentenindex
'Informationen in das Tabellenblatt einfügen
Do While Not EOF(Dokumentenindex)   'komplette Datei einlesen(DoSchleife)
'Zeilenweise auslesen
Line Input #Dokumentenindex, Inhalt
'Wert in das Tabellenblatt eintragen
ActiveSheet.Cells(Dokumentenindex, Zeile + 1) = Inhalt
Zeile = Zeile + 1
Loop   'Do Schleifenende
'Quelldatei schließen
Next
End Sub

______________________________________________

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Laufzeitfehler 52 beim einlesen von Textdateien
19.02.2019 16:56:36
Textdateien
Hola,
verlinkst du bitte deine Fragen in den verschiedenen Foren untereinander?
Danke.
Gruß,
steve1da
AW: Laufzeitfehler 52 beim einlesen von Textdateien
19.02.2019 17:08:29
Textdateien
Hallo Arne,
du kannst nur Dateinummern von 1 bis 511 benutzen. In deinem Makro macht die Nummierung der Dateien keinen Sinn. Du kannst immer die selbe Nummer benutzen.
Teste mal:
Sub TXTimportieren()
    'Importiert den Inhalt der Textdateien Zeilenweise
    
    
    'Variablen definieren
    Dim Pfad As String
    Dim PDFDateipfad As String
    Dim Dateiname As String
    Dim Dokumentenindex As Long
    Dim AnzahlDateien As Integer
    Dim Spalte As Long
    Dim Inhalt As String
    Dim DateiNummer As Integer
    
    Reset
    DateiNummer = FreeFile
    
    'Pfad definieren
    Pfad = ActiveWorkbook.Worksheets("Menü").Range("C11").Value
    
    'AnzahlDateien aus Menü
    AnzahlDateien = ActiveWorkbook.Worksheets("Menü").Range("H7").Value
    
    'Tabellenblatt aktivieren&bereinigen
    ThisWorkbook.Worksheets("Import").Activate
    ActiveSheet.Columns("A:XX").Delete
    
    'Startwerte zuweisen
    For Dokumentenindex = 1 To AnzahlDateien
        Spalte = 1
        Dateiname = ActiveWorkbook.Worksheets("Übersicht").Range("C" & Dokumentenindex).Value
        PDFDateipfad = ActiveWorkbook.Worksheets("Übersicht").Range("A" & Dokumentenindex).Value
        ActiveSheet.Cells(Dokumentenindex, 1) = PDFDateipfad
        
        'Quelldatei ansprechen
        Quelldatei = Pfad & "\" & Dateiname
        
        
        'Quelldatei öffnen
        Open Quelldatei For Input As #DateiNummer
        
        'Informationen in das Tabellenblatt einfügen
        Do Until EOF(DateiNummer) 'komplette Datei einlesen(DoSchleife)
            
            
            'Zeilenweise auslesen
            Line Input #DateiNummer, Inhalt
            
            'Wert in das Tabellenblatt eintragen
            ActiveSheet.Cells(Dokumentenindex, Spalte + 1) = Inhalt
            
            Spalte = Spalte + 1
            
        Loop 'Do Schleifenende
        
        'Quelldatei schließen
        Close #DateiNummer
        
    Next
    
End Sub

Gruß
Nepumuk
Anzeige
AW: Laufzeitfehler 52 beim einlesen von Textdateien
19.02.2019 18:19:26
Textdateien
Hallo Drauflosprogrammierer Arne,
hättest Du einmal den Cursor auf 'Open' gesetzt und die F1-Taste gedrückt, dann hätte Dir die Vba-Online-Hilfe verraten, was zu tun ist, um eine gültige FileNumber zu erhalten.
Das Motto - einfach mal ein paar Excel-Foren beschäftigen, statt selber aktiv zu werden, ist für mich total unverständlich.
Gruß von Luschi
aus klein-Paris
PS: und ich hoffe, daß Dir die Tante 'Google' nicht unbekannt ist!

301 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige