Sub Traitement()
Dim Fichier As Object
Dim Chemin As String, T As String
Dim TSource As String, TCible As String
Dim NbrDeFichLus As Long, NbrDeFichMod As Long
'A adapter...
Chemin = "E:\temp\"
TSource = "azerty"
TCible = "querty"
'Traitement
With CreateObject("Scripting.FileSystemObject")
For Each Fichier In .GetFolder(Chemin).Files
If Fichier.Name Like "*.txt" Then
NbrDeFichLus = NbrDeFichLus + 1
'Ouvre le fichier texte et mémorise le contenu
With .OpenTextFile(Chemin & Fichier.Name, 1)
T = .readall: .Close
End With
'Traite le contenu de la chaine
If InStr(T, TSource) > 0 Then 'si TSource existe remplace par TCible
NbrDeFichMod = NbrDeFichMod + 1
T = Replace(T, TSource, TCible)
With .CreateTextFile(Chemin & "OK " & Fichier.Name, True)
.WriteLine T: .Close
End With
Else 'sinon ajoute TCible
NbrDeFichMod = NbrDeFichMod + 1
With .CreateTextFile(Chemin & "OK " & Fichier.Name, True)
.WriteLine TCible: .WriteLine T: .Close
End With
End If
End If
Next Fichier
End With
MsgBox NbrDeFichLus & " Fichier(s) Lu(s)." & vbLf & NbrDeFichMod & " Fichier(s) modifié(s)"
End Sub