Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Code : remplacer la valeur de certaines cellules d'une plage par une autre valeur ?

2 réponses
Avatar
Jean PIERRE
Bonjour,

J'ai une plage de cellules (lignes+colonnes) que je nomme "TOM" !
Est-il possible d'=E9crire un code (une boucle) dans une macro pour qu'il p=
asse en revue chaque cellule de la plage et que chaque cellule qui contient=
un nombre d=E9termin=E9, il remplace la valeur par une autre !
Egalement, qu'il colorie =E9ventuellement ces plages l=E0 !
Je vous remercie de votre r=E9ponse !
Cordialement,

2 réponses

Avatar
Jacky
Bonjour,
...une macro pour qu'il passe en revue chaque cellule de la plage ...




Une piste...

For Each c In [TOM]
'Le fond de la cellule sera en couleur rouge si elle est égale à 0 (zéro)
If c = 0 Then c.Interior.ColorIndex = 3
'ici les conditions pour les evenventuelles modif de la cellule
Next

--
Salutations
JJ


"Jean PIERRE" a écrit dans le message de news:

Bonjour,

J'ai une plage de cellules (lignes+colonnes) que je nomme "TOM" !
Est-il possible d'écrire un code (une boucle) dans une macro pour qu'il passe en revue chaque cellule de la
plage et que chaque cellule qui contient un nombre déterminé, il remplace la valeur par une autre !
Egalement, qu'il colorie éventuellement ces plages là !
Je vous remercie de votre réponse !
Cordialement,
Avatar
MichD
Bonjour Jean-Pierre, Jacky,

Si la boucle couvre une petite plage, la méthode de Jacky peut faire le boulot.

Sur une grande plage, la méthode Find, FindNext devrait être beaucoup plus rapide!

Et si tu veux remplacer le chiffre 5 dans une plage de cellule, tu peux le faire sans
boucle
comme ceci :

Si le chiffre 5 fait partie d'une chaîne de caractères, tu dois remplacer le paramètre
LookAt:=xlWhole par LookAt:=xlPart. De même que le paramètre xlByColumns
peut-être remplacer par XlbyRows selon les besoins. C'est l'approche la plus rapide
à programmer et à l'exécution.

'------------------------------
Sub test()
With Worksheets("Feuil1")
.Range("A1:A10").Replace What:=5, replacement:, _
LookAt:=xlWhole, searchOrder:=xlByColumns
End With
End Sub
'------------------------------



"Jacky" a écrit dans le message de groupe de discussion :
jp2q7v$tsh$

Bonjour,
...une macro pour qu'il passe en revue chaque cellule de la plage ...




Une piste...

For Each c In [TOM]
'Le fond de la cellule sera en couleur rouge si elle est égale à 0 (zéro)
If c = 0 Then c.Interior.ColorIndex = 3
'ici les conditions pour les evenventuelles modif de la cellule
Next

--
Salutations
JJ


"Jean PIERRE" a écrit dans le message de news:

Bonjour,

J'ai une plage de cellules (lignes+colonnes) que je nomme "TOM" !
Est-il possible d'écrire un code (une boucle) dans une macro pour qu'il passe en revue
chaque cellule de la
plage et que chaque cellule qui contient un nombre déterminé, il remplace la valeur par
une autre !
Egalement, qu'il colorie éventuellement ces plages là !
Je vous remercie de votre réponse !
Cordialement,