Réponse acceptée !
Re Ma boule de cristal me suggère une anomalie dans la 2eme ligne : manquerait bien un ; après le B Donc, je résume : Si 2eme donnée sur la ligne est B, alors remplacer 0 par 45
Est-ce que tu as déjà séparé chaque élément de ta ligne ? (isolé 5 puis B puis le prénom ...) ? Je suppose que oui, pour pouvoir t'en servir ensuite ... Toujours des suppositions ... pas très bavard sur tes explications
Méthode simple : A chaque ligne que tu vas traiter, il faut convertir ta ligne en ensemble de données : Dim Tableau() As String Tableau = Split(laLigneLue, ";") Comme ça, tu trouveras "5" dans Tableau(0), "B" dans Tableau(1), ...
Revenons za nos moutons : "Si 2eme donnée sur la ligne est B, alors remplacer 0 par 45" Facile maintenant : La 2eme donnée est l'index 1 (car tableau commence à 0), et le chiffre à modifier est dans 5 If Tableau(1) = "N" And Tableau(5) = "0" Then Tableau(5) = "45"
Si tu te fiches d'avoir les éléments dans un tableau, tu peux recréer ta chaine initiale corrigée avec Join. Je te laisse le soin de trouver comment cette instruction fonctionne, faut bien que tu bosses un peu ...
Vala Jack, MVP VB NB : Je ne répondrai pas aux messages privés
Champion du monde de boule de cristal - 2005 Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
|