Office Forum
www.Office-Loesung.de
Access :: Excel :: Outlook :: PowerPoint :: Word :: Office :: Wieder Online ---> provisorisches Office Forum <-
mehrere .txt-Dateien einlesen bearbeiten und anordnen
zurück: suchen ersetzen weiter: Mit Excel Makros PPT Slides aktualisieren Unbeantwortete Beiträge anzeigen
Neues Thema eröffnen   Neue Antwort erstellen     Status: Offen Facebook-Likes Diese Seite Freunden empfehlen
Zu Browser-Favoriten hinzufügen
Autor Nachricht
bobross888
Gast


Verfasst am:
12. Dez 2009, 01:02
Rufname:

mehrere .txt-Dateien einlesen bearbeiten und anordnen - mehrere .txt-Dateien einlesen bearbeiten und anordnen

Nach oben
       Version: Office 2003

Hey! Ich bin vollkommener Neuling und habe leider noch nicht viel Ahnung. Ich würe gerne m.H. eines Makros mehrere .txt Dateien (12 Zeilen, 8 Spalten) die alle in einem Ordner sind einlesen, dann Transformieren und untereinander anordnen, das zwischen jedem Datenblock oben und unten 2 Zeilen frei sind...
Für eine einzelne Datei hab ichs bisher hinbekommen, aber für mehrere und dann auch noch schön anordnen kann ichs leider nicht.
kann mir bitte jemand helfen?
Gast



Verfasst am:
12. Dez 2009, 02:05
Rufname:


AW: mehrere .txt-Dateien einlesen bearbeiten und anordnen - AW: mehrere .txt-Dateien einlesen bearbeiten und anordnen

Nach oben
       Version: Office 2003

Hallo bobross888,

wenn Du uns Deinen bisher erzeugten Code für den ersten Datenblock geben würdest, dann findet sich hier bestimmt jemand, der ihn Dir entsprechend erweitert.

Es hört sich im Moment danach an, als ob lediglich eine zusätzlich Schleife eingebaut werden muß, die Dein bisheriges Skript mehrfach durchläuft und den Range anpasst!

Wünsche eine angenehme Nacht.
Gruß, Thomas
Gast



Verfasst am:
12. Dez 2009, 12:09
Rufname:

AW: mehrere .txt-Dateien einlesen bearbeiten und anordnen - AW: mehrere .txt-Dateien einlesen bearbeiten und anordnen

Nach oben
       Version: Office 2003

Okay! hier also das, was ich bisher geschafft habe. Eine meiner vielen textdateien in worksheet 2 (A1) importiert, dann kopiert, transformiert und nur die werte in sheet 1 (C3) eingefügt. Dann hab ich die daten in worksheet 2 wieder gelöscht. (kann man das einfügen und transformieren und werte einfügen auch ohne den zwischenschritt auf worksheet 2 machen?)

jetzt soll das ganze mit n dateien nacheinander von 1 bis n durchgeführt werden. Die transformierte datei soll jetzt quasi 2 zeilen unter der letzten zeile des vorhergehenden datenblocks eingefügt werden. hier also C13.

Sub Makro2()
'
' Makro2 Makro
' Makro am 12.12.2009 von Martin aufgezeichnet
'

'
Sheets("Tabelle2").Select
Range("A1").Select
With ActiveSheet.QueryTables.Add(Connection:= _
"TEXT;C:\Users\Martin\Desktop\Neuer Ordner\1.txt", Destination:=Range("A1"))
.Name = "1_1"
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.TextFilePromptOnRefresh = False
.TextFilePlatform = 850
.TextFileStartRow = 1
.TextFileParseType = xlFixedWidth
.TextFileTextQualifier = xlTextQualifierDoubleQuote
.TextFileConsecutiveDelimiter = False
.TextFileTabDelimiter = True
.TextFileSemicolonDelimiter = False
.TextFileCommaDelimiter = False
.TextFileSpaceDelimiter = False
.TextFileColumnDataTypes = Array(1, 1, 1, 1, 1, 1, 1, 1)
.TextFileFixedColumnWidths = Array(1, 2, 2, 2, 2, 2, 2)
.TextFileTrailingMinusNumbers = True
.Refresh BackgroundQuery:=False
End With
Range("A1:H13").Select
Selection.Copy
Sheets("Tabelle1").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=True
Sheets("Tabelle2").Select
Application.CutCopyMode = False
Selection.ClearContents
Selection.QueryTable.Delete
Sheets("Tabelle1").Select
End Sub
Gast



Verfasst am:
14. Dez 2009, 18:26
Rufname:

AW: mehrere .txt-Dateien einlesen bearbeiten und anordnen - AW: mehrere .txt-Dateien einlesen bearbeiten und anordnen

Nach oben
       Version: Office 2003

weiß keiner ne lösung?
bobross888
Gast


Verfasst am:
02. Jan 2010, 01:23
Rufname:


AW: mehrere .txt-Dateien einlesen bearbeiten und anordnen - AW: mehrere .txt-Dateien einlesen bearbeiten und anordnen

Nach oben
       Version: Office 2003

hab leider immer noch keine Lösung!

für zwei Datensätze sieht das jetzt so aus:

Sub Textimport()
'
' Textimport Makro
' Makro am 02.01.2010 von Martin aufgezeichnet
'

'
Sheets("Tabelle2").Select
With ActiveSheet.QueryTables.Add(Connection:= _
"TEXT;C:\Users\Martin\Desktop\1.txt", Destination:=Range("A1"))
.Name = "1"
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.TextFilePromptOnRefresh = False
.TextFilePlatform = 850
.TextFileStartRow = 1
.TextFileParseType = xlFixedWidth
.TextFileTextQualifier = xlTextQualifierDoubleQuote
.TextFileConsecutiveDelimiter = False
.TextFileTabDelimiter = True
.TextFileSemicolonDelimiter = False
.TextFileCommaDelimiter = False
.TextFileSpaceDelimiter = False
.TextFileColumnDataTypes = Array(1, 1, 1, 1, 1, 1, 1, 1)
.TextFileFixedColumnWidths = Array(1, 2, 2, 2, 2, 2, 2)
.TextFileTrailingMinusNumbers = True
.Refresh BackgroundQuery:=False
End With
Range("A1:H12").Select
Selection.Copy
Sheets("Tabelle1").Select
Range("B2").Select
Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=True
Columns("B:B").EntireColumn.AutoFit
Columns("C:C").EntireColumn.AutoFit
Columns("DVery Happy").EntireColumn.AutoFit
Columns("E:E").EntireColumn.AutoFit
Columns("F:F").EntireColumn.AutoFit
Columns("G:G").EntireColumn.AutoFit
Columns("H:H").EntireColumn.AutoFit
Columns("I:I").EntireColumn.AutoFit
Columns("J:J").EntireColumn.AutoFit
Columns("K:K").EntireColumn.AutoFit
Columns("L:L").Select
Columns("L:L").EntireColumn.AutoFit
Columns("M:M").EntireColumn.AutoFit
Range("B11").Select
Sheets("Tabelle2").Select
Range("A1:H12").Select
Application.CutCopyMode = False
Selection.ClearContents
Selection.QueryTable.Delete
Application.WindowState = xlMinimized
Application.WindowState = xlNormal
Range("A1").Select
With ActiveSheet.QueryTables.Add(Connection:= _
"TEXT;C:\Users\Martin\Desktop\2.txt", Destination:=Range("A1"))
.Name = "2"
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.TextFilePromptOnRefresh = False
.TextFilePlatform = 850
.TextFileStartRow = 1
.TextFileParseType = xlFixedWidth
.TextFileTextQualifier = xlTextQualifierDoubleQuote
.TextFileConsecutiveDelimiter = False
.TextFileTabDelimiter = True
.TextFileSemicolonDelimiter = False
.TextFileCommaDelimiter = False
.TextFileSpaceDelimiter = False
.TextFileColumnDataTypes = Array(1, 1, 1, 1, 1, 1, 1, 1)
.TextFileFixedColumnWidths = Array(1, 2, 2, 2, 2, 2, 2)
.TextFileTrailingMinusNumbers = True
.Refresh BackgroundQuery:=False
End With
Range("A1:H12").Select
Selection.Copy
Sheets("Tabelle1").Select
Range("B12").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=True
Sheets("Tabelle2").Select
Application.CutCopyMode = False
Selection.ClearContents
Selection.QueryTable.Delete
Sheets("Tabelle1").Select
End Sub


Excel soll das jetzt aber so für alle Text-Dateien machen, die sich in dem Ordner befinden....
r.mueller
Gast


Verfasst am:
02. Jan 2010, 08:17
Rufname:

AW: mehrere .txt-Dateien einlesen bearbeiten und anordnen - AW: mehrere .txt-Dateien einlesen bearbeiten und anordnen

Nach oben
       Version: Office 2003

Hallo

Code:

Sub AlleAusgewahltenTextFilesInSheetEinfuegen()
 'Dialog: auch zur mehrfach Auswahl von Dateien
 'es wird der Filename mit dem Path zurückgegeben
 'Zur Mehrfachauswahl einzeln: Strg Taste gedrückt halten und Files anclicken
 'oder Shift Taste gedrückt halten und erste + letztes File anclicken
 'Wird Multiselect verwendet gibt die GetOpenFileName ein Array zurück
 Dim PathAndFileNames As Variant 'kein String !
 Dim strPathAndFile As String
 Dim xi As Long
 Dim lngFN As Long
 Dim strText As String
 Dim lngAbZeile As Long
 Dim qtb As QueryTable
 Dim wksZiel As Worksheet
Set wksZiel = ActiveWorkbook.Worksheets("Tabelle5") 'Anpassen!!!

PathAndFileNames = Application.GetOpenFilename( _
    FileFilter:="Text Files (*.txt), *.txt", _
    Title:="Meine Dateien", _
    MultiSelect:=True)
 
If VarType(PathAndFileNames) = vbBoolean Then
  MsgBox "Abgebrochen!"
Else

 'Alle ausgewählen File bearbeiten
 For xi = LBound(PathAndFileNames) To UBound(PathAndFileNames)
  strPathAndFile = PathAndFileNames(xi)
  lngAbZeile = wksZiel.Cells(wksZiel.Rows.Count, 1).End(xlUp).Row + 3
  Set qtb = wksZiel.QueryTables.Add(Connection:="TEXT;" & strPathAndFile, Destination:=wksZiel.Cells(lngAbZeile, 1))
  qtb.Name = "1"
  qtb.FieldNames = True
  qtb.RowNumbers = False
  qtb.FillAdjacentFormulas = False
  qtb.PreserveFormatting = True
  qtb.RefreshOnFileOpen = False
  qtb.RefreshStyle = xlInsertDeleteCells
  qtb.SavePassword = False
  qtb.SaveData = True
  qtb.AdjustColumnWidth = True
  qtb.RefreshPeriod = 0
  qtb.TextFilePromptOnRefresh = False
  qtb.TextFilePlatform = 850
  qtb.TextFileStartRow = 1
  qtb.TextFileParseType = xlFixedWidth
  qtb.TextFileTextQualifier = xlTextQualifierDoubleQuote
  qtb.TextFileConsecutiveDelimiter = False
  qtb.TextFileTabDelimiter = True
  qtb.TextFileSemicolonDelimiter = False
  qtb.TextFileCommaDelimiter = False
  qtb.TextFileSpaceDelimiter = False
  qtb.TextFileColumnDataTypes = Array(1, 1, 1, 1, 1, 1, 1, 1)
  qtb.TextFileFixedColumnWidths = Array(1, 2, 2, 2, 2, 2, 2)
  qtb.TextFileTrailingMinusNumbers = True
  qtb.Refresh BackgroundQuery:=False
  qtb.Delete
 
 Next
End If
wksZiel.Columns.AutoFit
End Sub


Gruß
r.mueller
Phelan XLPH
Fortgeschritten


Verfasst am:
02. Jan 2010, 08:51
Rufname: Phelan

AW: mehrere .txt-Dateien einlesen bearbeiten und anordnen - AW: mehrere .txt-Dateien einlesen bearbeiten und anordnen

Nach oben
       Version: Office 2003

Hallo, so vielleicht?

Code:
Sub ImportTxt()
Dim strPfad     As String
Dim StrDatei    As String
Dim intFF       As Integer
Dim strText     As String
Dim arrZ        As Variant
Dim arrS        As Variant
Dim lngI        As Long
Dim intK        As Integer
Dim arrOut()    As Variant
Dim wks         As Worksheet

Set wks = Worksheets("Tabelle1")    'Anpassen ***********
strPfad = "D:\test\"                'Anpassen ***********
StrDatei = Dir(strPfad & "*.txt")   'Anpassen ***********

Do While StrDatei <> ""
    intFF = FreeFile()
    Open strPfad & StrDatei For Input As #intFF
    strText = Input(LOF(1), #intFF)
    Close #intFF
   
    arrZ = Split(strText, vbCrLf)
    For lngI = LBound(arrZ) To UBound(arrZ)
        arrS = Split(arrZ(lngI), vbTab)
        For intK = LBound(arrS) To UBound(arrS)
            ReDim Preserve arrOut(UBound(arrZ), UBound(arrS))
            arrOut(lngI, intK) = arrS(intK)
        Next
    Next
    wks.Range("B" & Rows.Count).End(xlUp).Offset(2).Resize(UBound(arrOut), UBound(arrOut, 2)) = _
    WorksheetFunction.Transpose(arrOut)
    StrDatei = Dir()
Loop
wks.Range("B1:M1").EntireColumn.AutoFit
End Sub

_________________
Was vorstellbar ist, ist auch machbar. - Albert Einstein
Gast



Verfasst am:
02. Jan 2010, 17:45
Rufname:

AW: mehrere .txt-Dateien einlesen bearbeiten und anordnen - AW: mehrere .txt-Dateien einlesen bearbeiten und anordnen

Nach oben
       Version: Office 2003

yuhuuu es geht! danke Smile
schatzmeester
Gast


Verfasst am:
04. März 2014, 15:22
Rufname:


AW: mehrere .txt-Dateien einlesen bearbeiten und anordnen - AW: mehrere .txt-Dateien einlesen bearbeiten und anordnen

Nach oben
       Version: Office 2003

Hallo,

Ich habe ein ähnliches Problem, nur handelt es sich bei den txt-Dateien um nur zwei Spalten (A und B) davon benötige ich nur die Spalte B. Aber es handelt sich um 50+ Dateien. Die Spalten sollen dann in eine Datei von Spalte A bis xxx.
Neues Thema eröffnen   Neue Antwort erstellen Alle Zeiten sind
GMT + 1 Stunde

Diese Seite Freunden empfehlen

Seite 1 von 1
Gehe zu:  
Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum nicht posten
Du kannst Dateien in diesem Forum herunterladen

Verwandte Themen
Forum / Themen   Antworten   Autor   Aufrufe   Letzter Beitrag 
Keine neuen Beiträge Excel Formeln: CSV File einlesen und als Serienbrief verwenden (Rechnungen) 4 nbg12 1408 04. Jul 2011, 16:17
Gast CSV File einlesen und als Serienbrief verwenden (Rechnungen)
Keine neuen Beiträge Excel Formeln: Artikelnummern automatisch bearbeiten lassen 5 Thommyy 179 18. Feb 2011, 00:54
Thommyy Artikelnummern automatisch bearbeiten lassen
Keine neuen Beiträge Excel Formeln: Alte Verknüpfungen unter Bearbeiten>Verknüpfungen 6 Franky1112 488 20. Dez 2010, 16:10
Franky1112 Alte Verknüpfungen unter Bearbeiten>Verknüpfungen
Keine neuen Beiträge Excel Formeln: drop down bearbeiten 16 SVENII 21927 06. Dez 2010, 15:55
Gast drop down bearbeiten
Keine neuen Beiträge Excel Formeln: Std, Minuten und Überstunden bearbeiten 1 Unerfahrener 1010 24. Jun 2010, 09:37
Gast Std, Minuten und Überstunden bearbeiten
Keine neuen Beiträge Excel Formeln: Automatisches Einlesen und Formatieren von Datensätzen 1 Mannifred 299 31. Mai 2010, 19:29
Gast Automatisches Einlesen und Formatieren von Datensätzen
Keine neuen Beiträge Excel Formeln: Werte aus anderer Excel Datei einlesen 13 peter1981 2007 31. März 2010, 19:16
silex1 Werte aus anderer Excel Datei einlesen
Keine neuen Beiträge Excel Formeln: Mehrfach vorhandene Werte aus Matrix auslesen und anordnen 4 mephisto38 1418 17. Feb 2010, 09:50
Gast Mehrfach vorhandene Werte aus Matrix auslesen und anordnen
Keine neuen Beiträge Excel Formeln: Spalte auslesen und als inverse Pyramide anordnen 5 ertbAl 501 04. Feb 2010, 17:28
ertbAl Spalte auslesen und als inverse Pyramide anordnen
Keine neuen Beiträge Excel Formeln: kann Abfrage nicht bearbeiten nach kopieren der Exceldatei a 1 DB importeur 687 04. Feb 2010, 10:49
Mr. Proxy kann Abfrage nicht bearbeiten nach kopieren der Exceldatei a
Keine neuen Beiträge Excel Formeln: Mittels Indexnummern Werte aus versch. Spalten einlesen 5 UweMoyela 279 27. Nov 2009, 18:56
Heinz Schweigert Mittels Indexnummern Werte aus versch. Spalten einlesen
Keine neuen Beiträge Excel Formeln: " bei txt-Dateien 0 itwolf 192 30. März 2009, 13:39
itwolf " bei txt-Dateien
 

----> Diese Seite Freunden empfehlen <------ Impressum - Besuchen Sie auch: Microsoft Excel Tricks