Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1024to1028
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

Einige Werte aus Txt Datei holen

Einige Werte aus Txt Datei holen
24.11.2008 17:47:00
Andre´
Hallo alle zusammen,
ich habe in einer Excel Datei in der Spalte B beginnend ab Zeile 6 Werte stehen die in der TXT Datei gesucht werden müssen (in jeder Zeile ab der 18. bis 36 Stelle) und bei Übereinstimmung soll aus der TXT Datei alles was ab der 59 bis 71 Stelle steht in die Exceldatei Spalte K übernommen werden. Die Text Datei befindet sich immer unter C:\TXT Datei und nennt sich immer test.txt
Hier ein Bsp. der Excel Datei https://www.herber.de/bbs/user/57091.xls
Hier ein Bsp. der TXT Datei https://www.herber.de/bbs/user/57092.txt
Ich hoffe mir kann jemand helfen.
Vielen Dank im Voraus
MFG Andre

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Einige Werte aus Txt Datei holen
24.11.2008 21:14:02
Tino
Hallo,
teste mal diesen Code
Modul Modul1
Option Explicit 
 
Sub Makro1() 
Dim strFile As String 
Dim meArea, tempAr, varRow 
Dim TempMappe As Workbook 
Dim i As Long, A As Long 
 
'Pfad + Datei 
strFile = "C:\TXT Datei\test.txt" 
If Dir$(strFile, vbNormal) = "" Then Exit Sub 'Datei nicht vorhanden 
Application.ScreenUpdating = False 
   Workbooks.OpenText Filename:=strFile, Origin:= _
        xlWindows, StartRow:=5, DataType:=xlFixedWidth, FieldInfo:=Array(Array(0, _
        1), Array(8, 1), Array(17, 1), Array(36, 1), Array(55, 1), Array(58, 1), Array(71, 1), Array _
        (80, 1), Array(89, 1), Array(97, 1), Array(103, 1), Array(112, 1), Array(118, 1), Array(122 _
        , 1)), TrailingMinusNumbers:=True 
  
 Set TempMappe = ActiveWorkbook 
     
    'Datei in Area Speichern 
    With TempMappe.Sheets(1) 
     tempAr = .Range("C3", .Cells(.Rows.Count, 3).End(xlUp)) 
     meArea = .Range("F3", .UsedRange.Cells(.UsedRange.Cells.Count)) 
    End With 
  
 'Datei wieder schließen 
 TempMappe.Close False 
  
 'Zellen verarbeiten 
    For A = 6 To Cells(Rows.Count, "B").End(xlUp).Row 
 'Suche in Area 
     varRow = Application.Match(Cells(A, 2), tempAr, 0) 
 'prüfen ob gefunden 
        If IsNumeric(varRow) Then 
 'Text in Zellen schreiben 
           For i = 1 To Ubound(meArea, 2) 
            Cells(A, i + 10) = meArea(varRow, i) 
           Next i 
         
        End If 
    Next A 
Application.ScreenUpdating = True 
End Sub 
 


Gruß Tino

Anzeige
AW: Einige Werte aus Txt Datei holen
24.11.2008 22:16:00
Andre´
Hallo Tino,
erstmals Danke für die Meldung.
Funktioniert ganz gut, nur sollen die Werte die ich in der Spalte K abgebildet habe erscheinen und nicht die anderen Zeilen die nach der Qty On Hand Spalte kommen, weil in diesen Spalten bereits etwas anderes steht.
Hast Du auch dafür eine Lösung
MFG Andre
AW: Einige Werte aus Txt Datei holen
24.11.2008 22:24:32
Andre´
Hallo Tino,
hab es selbst gefunden statt:
meArea = .Range("F3", .UsedRange.Cells(.UsedRange.Cells.Count))
meArea = .Range("F3", .Cells(.Rows.Count, 6).End(xlUp))
MFG Andre
AW: Einige Werte aus Txt Datei holen
24.11.2008 22:30:02
Tino
Hallo,
versuche es mal hiermit.
Option Explicit

Sub Makro1()
Dim strFile As String
Dim meArea, tempAr, varRow
Dim TempMappe As Workbook
Dim i As Long, A As Long

'Pfad + Datei 
strFile = "C:\Forum\Filelesen\test.txt" '"C:\TXT Datei\test.txt" 
If Dir$(strFile, vbNormal) = "" Then Exit Sub 'Datei nicht vorhanden 
Application.ScreenUpdating = False
   Workbooks.OpenText Filename:=strFile, Origin:= _
        xlWindows, StartRow:=5, DataType:=xlFixedWidth, FieldInfo:=Array(Array(0, _
        1), Array(8, 1), Array(17, 1), Array(36, 1), Array(55, 1), Array(58, 1), Array(71, 1), Array _
        (80, 1), Array(89, 1), Array(97, 1), Array(103, 1), Array(112, 1), Array(118, 1), Array(122 _
        , 1)), TrailingMinusNumbers:=True
 
 Set TempMappe = ActiveWorkbook
    
    'Datei in Area Speichern 
    With TempMappe.Sheets(1)
     tempAr = .Range("C3", .Cells(.Rows.Count, 3).End(xlUp))
     meArea = .Range("F3", .Cells(.Rows.Count, "F").End(xlUp))
    End With
 
 'Datei wieder schließen 
 TempMappe.Close False
 
 'Zellen verarbeiten 
    For A = 6 To Cells(Rows.Count, "B").End(xlUp).Row
 'Suche in Area 
     varRow = Application.Match(Cells(A, 2), tempAr, 0)
 'prüfen ob gefunden 
        If IsNumeric(varRow) Then
            Cells(A, 11) = meArea(varRow, 1)
        End If
    Next A
Application.ScreenUpdating = True
End Sub


Gruß Tino

Anzeige
Danke funzt auch :-))
24.11.2008 22:37:14
Andre´

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige