(macro vba)

sylvo -  
f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Depuis des semaines je n'arrive pas à solutionner mon problème:
j'ai un fichier txt :

AA11pi BkPm 1478 ni
BB457 44444 mlkk kopppp
BB124 MPP44 1878 mmmmmmmmm

Je voudrais remplacer les caractères en 15ème - 16ème position (78) en 01 si est seulement si c'est égal à (78) et la 1ère - 2ème position =(BB), remplacer par 28 dans toutes les ligne

En vous remerciant
A voir également:

1 réponse

f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   1 713
 
Bonjour,

Un exemple de code VBA

Sub conver()
  Dim Fic, Fic1, Buffer
  
  'Fichier source chemin et fichier a definir
  Fic = "Chemin\Fichier_TXT.TXT"
  'Fichier Cible chemin et fichier1 a definir
  Fic1 = "Chemin\Fichier_TXT1.TXT"
  Close
  
  Open Fic For Input As #1
  Open Fic1 For Output As #2
    Do While Not EOF(1)
      Input #1, Buffer
        If Mid(Buffer, 15, 2) = "78" Then
          Mid(Buffer, 15, 2) = "01"
        End If
        If Left(Buffer, 2) = "BB" Then
          Buffer = "28" & Mid(Buffer, 3)
        End If
        Print #2, Buffer
    Loop
  Close
End Sub


Bonne suite
0