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

macro simple

1 réponse
Avatar
Nico75
Je d=E9bute en VBA et je "bute" sur un cas relativement simple, dans un
tableau je dois modifier les valeurs d'une colonne en fonction des
valeurs d'une autre, exemple :

si j'ai en chiffre <12 en G7, J7 doit afficher 0 et si G7 est
sup=E9rieure =E0 12 je dois afficher "ok".

J'ai trouv=E9 le code suivant mais il commence =E0 s'appliquer =E0 la
ligne 1 au lieu de la 7 (ligne de d=E9but du tableau) et je le trouve
assez lourd :

Sub condition02_click()
Application.ScreenUpdating =3D False
For i =3D Range("g65536").End(xlUp).Row To 1 Step -1

If Cells(i, 7).Value < 12 Then Cells(i, 10).Value =3D 0
Next
For i =3D Range("g65536").End(xlUp).Row To 1 Step -1
If Cells(i, 7).Value >=3D 12 Then Cells(i, 10).Value =3D "ok"


Next

End Sub

Je suis s=FBr qu'il y a bien plus simple et efficace, merci d'avance
pour votre aide

1 réponse

Avatar
JB
Bonjour,

En J7, la formule: =SI(G7>12;"ok";"")

JB

On 24 jan, 11:52, "Nico75" wrote:
Je débute en VBA et je "bute" sur un cas relativement simple, dans un
tableau je dois modifier les valeurs d'une colonne en fonction des
valeurs d'une autre, exemple :

si j'ai en chiffre <12 en G7, J7 doit afficher 0 et si G7 est
supérieure à 12 je dois afficher "ok".

J'ai trouvé le code suivant mais il commence à s'appliquer à la
ligne 1 au lieu de la 7 (ligne de début du tableau) et je le trouve
assez lourd :

Sub condition02_click()
Application.ScreenUpdating = False
For i = Range("g65536").End(xlUp).Row To 1 Step -1

If Cells(i, 7).Value < 12 Then Cells(i, 10).Value = 0
Next
For i = Range("g65536").End(xlUp).Row To 1 Step -1
If Cells(i, 7).Value >= 12 Then Cells(i, 10).Value = "ok"

Next

End Sub

Je suis sûr qu'il y a bien plus simple et efficace, merci d'avance
pour votre aide