Private Sub Form_Load() Const sFileName As String = "c:\test.txt" Dim FF As Integer Dim sBuffer As String Dim saLines() As String Dim i As Long Dim j As Long ' fichier en tableau FF = FreeFile Open sFileName For Input As #FF sBuffer = Input(LOF(FF), 1) Close #FF saLines = Split(sBuffer, vbCrLf) ' AVANT => Debug.Print sBuffer Debug.Print "====================" ' position précédente de "TRU" For i = 0 To UBound(saLines) If saLines(i) = "trololo" Then Exit For Next i ' conserve première partie sBuffer = vbNullString For j = 0 To i sBuffer = sBuffer & saLines(j) & vbCrLf Next j ' 3 items suivants sBuffer = sBuffer & saLines(i + 1) & saLines(i + 2) & saLines(i + 3) ' reste, sauve, fin For j = i + 4 To UBound(saLines) sBuffer = sBuffer & vbCrLf & saLines(j) Next j FF = FreeFile Open sFileName For Output As #FF Print #FF, sBuffer; Close #FF ' APRES => Debug.Print sBuffer Debug.Print "====================" Erase saLines Unload Me End Sub
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre questionPublic Function ForNortel1(sFileName As String) Dim FF As Integer Dim sBuffer As String Dim saLines() As String Dim i As Long Dim j As Long ' fichier en tableau FF = FreeFile Open sFileName For Input As #FF sBuffer = Input(LOF(FF), 1) Close #FF saLines = Split(sBuffer, vbCrLf) ' AVANT => Debug.Print sBuffer Debug.Print "====================" ' position précédente de "TRU" For i = 0 To UBound(saLines) If InStr(saLines(i), "traffic-control in-out re-authentication") > 0 Then i = i - 1 Exit For End If Next i ' conserve première partie sBuffer = vbNullString For j = 0 To i sBuffer = sBuffer & saLines(j) & vbCrLf Next j ' 3 items suivants sBuffer = sBuffer & saLines(i + 1) & saLines(i + 2) & saLines(i + 3) ' reste, sauve, fin For j = i + 4 To UBound(saLines) sBuffer = sBuffer & vbCrLf & saLines(j) Next j FF = FreeFile Open sFileName For Output As #FF Print #FF, sBuffer; Close #FF ' APRES => Debug.Print sBuffer Debug.Print "====================" Erase saLines End Function