vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
vb@rchiv Offline-Reader - exklusiv auf der vb@rchiv CD Vol.4  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

Allgemeine Diskussionen
Re: VBA & Bestimmte Zeile aus einer Textdatei auslesen 
Autor: SteS
Datum: 13.05.04 19:57

Hi
"Meine" Abänderung sieht so aus. und es funktioniert trotzdem nicht


Ich will die Funktion *bestimmte Zeile aus textdatei lesen* in excel verwenden.

Daraufhin hat Dieter mir geantwortet ich solle die Splitfunktion mit Split_String ersetzen:
jetzt sieht das so aus und es funktioniert immer noch nicht


' Bestimmte Zeile aus einer Textdatei lesen
Public Function ReadLine(ByVal sFile As String, _
  Optional ByVal nLine As Long = 1) As String
 
  Dim sLines() As String
  Dim oFSO As Object
  Dim oFile As Object
 
  ' Fehlerbehandlung aktivieren
  On Error GoTo ErrHandler
 
  ' Verweis auf das FileSystemObject erstellen
  Set oFSO = CreateObject("Scripting.FileSystemObject")
 
  ' Existiert die Datei überhaupt?
  If oFSO.FileExists(sFile) Then
    ' Datei öffnen
    Set oFile = oFSO.OpenTextFile(sFile)
 
    ' Alles lesen und in Array zerlegen
    sLines = Split_String(oFile.ReadAll, vbCrLf)
 
    ' Datei schließen
    oFile.Close
 
    Select Case Sgn(nLine)
       ' (nLine > 0)
      Case 1
        ' n-te Zeile von vorne beginnend
        ReadLine = sLines(nLine - 1)
 
      ' (nLine < 0)
      Case -1
        ' n-te Zeile von hinten beginnend
        ReadLine = sLines(UBound(sLines) + nLine + 1)
    End Select
  End If
 
ErrHandler:
  ' Objekte zerstören
  Set oFile = Nothing
  Set oFSO = Nothing
End Function
Split_string
' Zerlegt ein String anhand eines angegebenen
' Trennzeichens und gibt die einzelne Teilstrings
' als nullbasierendes Array zurück
'
' Wird kein Trennzeichen angegeben, wird als
' Trennzeichen das Leerzeichen angenommen
Public Function Split_String(ByVal inp_str As String, _
  Optional sep As Variant)
 
  Dim i As Integer
  Dim j As Integer
  Dim ret() As Variant
 
  ' kein Trennzeiche?
  If IsMissing(sep) Then sep = " "
 
  i = 1: j = 0
  ReDim Preserve ret(j)
 
  Do While Mid(inp_str, i, 1) = sep
    i = i + 1
  Loop
 
  Do
    If Not Mid(inp_str, i, 1) = sep Then
      ret(j) = ret(j) & Mid(inp_str, i, 1)
      i = i + 1
    Else
      Do
        i = i + 1
      Loop While Mid(inp_str, i, 1) = sep
      If i > Len(inp_str) Then Exit Do
      j = j + 1
      ReDim Preserve ret(j)
    End If
  Loop While i <= Len(inp_str)
 
  Split_String = ret
End Function
Mit Bestem Dank

SteS
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
VBA & Bestimmte Zeile aus einer Textdatei auslesen608SteS13.05.04 12:35
Re: VBA & Bestimmte Zeile aus einer Textdatei auslesen402ModeratorDieter13.05.04 13:17
Re: VBA & Bestimmte Zeile aus einer Textdatei auslesen477SteS13.05.04 19:57
Re: VBA & Bestimmte Zeile aus einer Textdatei auslesen407Cerberus13.05.04 20:58
Re: VBA & Bestimmte Zeile aus einer Textdatei auslesen364SteS17.05.04 14:29

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel