Thema Datum  Von Nutzer Rating
Antwort
24.11.2020 11:19:43 Andreas
NotSolved
24.11.2020 12:35:48 Mase
NotSolved
24.11.2020 16:43:39 Gast41951
NotSolved
Blau Wissenschaftl. Zahl in String
24.11.2020 22:37:09 Mase
NotSolved
24.11.2020 12:36:15 Gast76916
NotSolved
24.11.2020 16:44:12 Gast50959
NotSolved

Ansicht des Beitrags:
Von:
Mase
Datum:
24.11.2020 22:37:09
Views:
540
Rating: Antwort:
  Ja
Thema:
Wissenschaftl. Zahl in String

Hole Dir das Textfile und arbeite asnchließend mit Text in Spalten.

 

Folgendes Beispiel importiert dieses File:

C:\Test\Nummern.txt

 

Das File hat 3 Spalten.

Spalten getrennt durch Tabs.

Zeilen getrennt durch Steuerzeichen CRLF.

 

Option Explicit

Sub ImportTXT()

    Dim v
    Dim s As String
    Dim FF As Integer
    Dim rng As Excel.Range
    '*** Textfile einlesen
    FF = FreeFile
    Open "c:\Test\Nummern.txt" For Binary As #FF
        s = Space$(LOF(FF))
        Get FF, , s
        s = Replace(s, vbTab, "|")
    Close #FF
    '*** Zeilenweise splitten; Zeile=vbCRLF ; Spalten="|"
    v = Split(s, vbCrLf)
    '*** aus 1D mach 2D-Array
    v = Application.Transpose(v)
    '*** Schreibe ins Worksheet
    Range("A1").Resize(UBound(v, 1), UBound(v, 2)).Value = v
    '*** Text in Spalten mit "|"
    Set rng = ActiveSheet.Range("A1").CurrentRegion
    
    rng.TextToColumns Destination:=ActiveSheet.Range("A1"), _
                        DataType:=XlTextParsingType.xlDelimited, _
                        TextQualifier:=XlTextQualifier.xlTextQualifierDoubleQuote, _
                        ConsecutiveDelimiter:=False, _
                        Tab:=False, _
                        Semicolon:=False, _
                        Comma:=False, _
                        Space:=False, _
                        Other:=True, _
                        OtherChar:="|", _
                        FieldInfo:=Array(Array(1, 2), Array(2, XlColumnDataType.xlTextFormat), Array(3, XlColumnDataType.xlTextFormat))
                        '*** 2DArrays in Array; je mehr Spalten, desto mehr Arrays im Array. Klingt komisch; einfach in Onlinehilfe nachlesen
    
    
End Sub


 

Das File in einem rutsch eingelesen.

Zeilenweise in ein 1D Array zerlegt.

In ein 2D-Array transponiert, sodass auf einmal an ein Worksheet übergeben werden kann.

 

Anschließend wird "Text in Spalten" angewandt, um die Daten von einer Spalte in viele Spalten aufzuteilen und als Text in diese Spalten zu schreiben.

 

Der Schlüssel für Dich liegt im Parameter FieldInfo.

 

Lies Dich ein. Wenn Du diesen Code durchschaust, ist es ein leichtes für DIch diesen an Deine Umgebung anzupassen.

 


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
24.11.2020 11:19:43 Andreas
NotSolved
24.11.2020 12:35:48 Mase
NotSolved
24.11.2020 16:43:39 Gast41951
NotSolved
Blau Wissenschaftl. Zahl in String
24.11.2020 22:37:09 Mase
NotSolved
24.11.2020 12:36:15 Gast76916
NotSolved
24.11.2020 16:44:12 Gast50959
NotSolved