Habe mich länger nicht mit VB beschäftigt, daher stehe ich nun bei folgendem Problem an:
Ich habe ein Verzeichnis mit vielen (>100) Textdateien, mit der Endung *dpt. In jeder Datei sind zwei Spalten, durch TAB getrennt. Dabei ist Spalte 1 die Y-Achse, Spalte 2 bezeichnet die X-Achse. Ich möchte nun automatisiert alle Spalten 2 aus allen *.dpt-Dateien nebeneinander in der Excel-Datei haben. Als Kopfzeile soll einfach der Dateiname genommen werden.
Um das besser zu veranschaulichen, habe ich mal folgendes angehängt:
https://www.herber.de/bbs/user/78143.xlsx
Ich habe mit folgendem Code versucht zu experimentieren, ich denke da fehlen nur kleine Anpassungen, um die ich jemanden von euch höflich bitte:
Sub Text_Import_alle()
Dim Zeile As Integer
Dim Spalte As Integer
Dim pos As Integer
Dim pfadfile As String
Dim fileart As String
Dim strTmp As String
'StartVerzeichnis - bitte anpassen
ChDrive "e:\"
ChDir "\testdaten"
pfadfile = "e:\testdaten"
fileart = "*.dpt"
'Start der Verarbeitung
Zeile = 1
fn = Dir(pfadfile & fileart)
Do While fn ""
Open fn For Input As #1
Cells(Zeile, 1).Value = fn ' Dateiname
Do While Not EOF(1)
Line Input #1, strTxt
pos = InStr(1, strTxt, ",")
Spalte = 2
Do While pos > 0
Cells(Zeile, Spalte).Value = Mid(strTxt, 1, pos - 1)
strTxt = Mid(strTxt, pos + 1)
pos = InStr(1, strTxt, ",")
Spalte = Spalte + 1
Loop
Cells(Zeile, Spalte).Value = strTxt 'letzer Rest
Zeile = Zeile + 1
Loop
Close
Zeile = Zeile + 1
fn = Dir()
Loop
Close #1
End Sub
Wenn ich das Makro allerdings so wie es ist ausführe, tut sich garnichts.
Wäre für Hilfe sehr dankbar.
Abgesehen davon wünsche ich allen die das lesen das Beste für 2012!
Beste Grüße,
Viktor