Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Des formules à modifier, par vba, faisable ?

Orodreth

XLDnaute Impliqué
Bonjour à tous.

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.

(désolé, pas de fichiers joints disponibles)

Merci d'avance,
Orodreth
 

Robert

XLDnaute Barbatruc
Repose en paix
Re : Des formules à modifier, par vba, faisable ?

Bonjour Orodreth,

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
 

pierrejean

XLDnaute Barbatruc
Re : Des formules à modifier, par vba, faisable ?

bonjour Orodreth

Salut Robert

une autre version (A tester ) :

Code:
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
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…