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

Import von Ascii Files

Import von Ascii Files
17.09.2014 10:50:17
Ascii
Hallo,
ich hätte ein kleines Porblem, bin im Bereich VBA recht neu und deswegen hätte ich an euch ein paar fragen.
Habe im Office Forum ein passenden Thread zu meiner Teilaufgabe gefunden.
Dies wäre der folgende Code:
Sub Messwerte()
Dim strFileName As String
Dim strPath As String
Dim intFileNr As Integer
Dim strEingabeString As String
Dim lngSatznummer As Long
Dim lngZeile As Long
Dim bolErsterMesswert As Boolean
Dim strBlattName As String
Dim intBlattnummer As Integer
Dim ws As Worksheet
strPath = "D:\Temp\" 'der Pfad, in dem die ASC-Files stehen
strFileName = Dir(strPath & "*.asc")
If strFileName  "" Then
intBlattnummer = 1
strBlattName = "Blatt-" & Format(intBlattnummer, "00")
lngZeile = 1
Set ws = ThisWorkbook.Worksheets.Add(After:=Worksheets(ThisWorkbook.Worksheets.Count))
ws.Name = strBlattName
Do Until strFileName = ""
bolErsterMesswert = False
intFileNr = FreeFile
Open (strPath & strFileName) For Input As #intFileNr
Do While Not EOF(intFileNr)
Line Input #intFileNr, strEingabeString
If Not bolErsterMesswert Then
If IsNumeric(Left(strEingabeString, 5)) Then
bolErsterMesswert = True
lngSatznummer = 0
End If
End If
If bolErsterMesswert Then
If lngSatznummer Mod 1 = 0 Then
ws.Cells(lngZeile, 1).Value = strEingabeString
lngZeile = lngZeile + 1
End If
lngSatznummer = lngSatznummer + 1
End If
Loop
Close intFileNr
strFileName = Dir
Loop
End If
If ws.Range("A1")  "" Then
ws.Columns("A:A").TextToColumns Destination:=Range("A1"), DataType:=xlDelimited, _
TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=True, Tab:=False, _
Semicolon:=False, Comma:=False, Space:=True, Other:=False, FieldInfo _
:=Array(Array(1, 1), Array(2, 1), Array(3, 1), Array(4, 1)), TrailingMinusNumbers:= _
True
End If
Set ws = Nothing
End Sub

Das Code ermöglicht mir einen .asc File mit den Messwerten ins Excel zu importieren, welches auch soweit funktioniert.
Dabei hätte ich aber ein Problem, nach dem Debuggen wird im Excel an der 1. Spalte und in der 1. Zeile also bei A1 das Wert nach Rechts verschoben. Nach langer rumprobieren habe ich es leider nicht rasubekommen.
Ein weiteres problem ist es, dieser Code erzeugt mir eine neue Tabelle erstellt, kann ich auch festlegen in welcher Tabelle und ab welchem Position die Werte eingetragen werden sollen?
Hoffe ihr könnt mir weiter helfen.
Gruß Rafet

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Frage ist auch in anderen Foren
17.09.2014 10:58:38
Daniel
gestellt worden und wird dort bearbeitet.
Gruß Daniel
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige