Hallo Dani,
die Formulierung "Der Abstand zwischen "Bezeichnung" und "Wert" ist nicht immer der gleiche, da manche Bezeichnungen um ein Zeichen länger/kürzer sind." ist zu schwammig. Gibt es eine feste Spaltenbreite, die in der txt-Datei für ein Datenfeld mit Leerzeichen aufgefüllt wird oder ist das Trennzeichen der Datenfelder in einem Datensatz (also einer Zeile) ein Tabulator oder ein anderes Zeichen? Das ist wichtig, weil daran festgemacht wird, welcher Bereich in welches Array-Element geschrieben wird.
Wenn Du schon Code hast, solltest Du den hier posten. Verwende für Beiträge in diesem Forum nicht den Internet Explorer. Der hebt aus unerfindlichen Gründen alle Zeilenumbrüche auf und Textblöcke, in denen evtl. auch noch Quellcode steht, fisselt niemand auseinander.
Mit folgendem Code kannst Du die Zeilen Deiner CSV-Datei bestimmen und Dein Array entsprechend dimensionieren:
Public Function GetNumberOfRowsInCsvFile(ByVal strFile As String) As Long
'Uwe Fabig - 13.02.2013, 11:30
'Quelle: https://www.xing.com/communities/posts/anzahl-zeilen-einer-textdatei-ermitteln-1002110449
Dim fso As Object
Dim ts As Object
Set fso = CreateObject("Scripting.FileSystemObject")
Set ts = fso.OpenTextFile(strFile)
ts.ReadAll
GetNumberOfRowsInCsvFile = ts.Line
Set fso = Nothing
Set ts = Nothing
End Function
|