Et tout d'abord, mes meilleurs voeux à tout le monde.
Voila mon problème: j'ai plusieurs classeurs que je dois traiter (bon, je les fais un par un pour simplifier).
Dans ces classeurs, j'ai plein de formules à modifier (remplacer "2007" par "2008", etc etc).
Je voudrais savoir s'il est possible de faire une macro qui automatise cela ?
çad qu'elle va chercher toutes les formules, vérifie si, dans ces formules, il y a le texte "2007" et enfin, remplace ce morceau de formule par "2008", à la même place dans la formule ?
Je m'en remets aux experts ET Vba ET formulistes pour m'aider à résoudre ce problème.
Récupéré avec l'enregistreur de macro, le code ci-dessous devrait faire l'affaire :
Code:
Sub Macro1()
ActiveSheet.UsedRange.Replace What:="2007", Replacement:="2008", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
End Sub
Sub remplace()
For Each ws In Sheets
For Each cel In ws.UsedRange
If Left(cel.Formula, 1) = "=" Then cel.Formula = Replace(cel.Formula, "2007", "2008")
Next cel
Next ws
End Sub
ne remplace que dans les formules mais dans toutes les feuilles