Ecrire une valeur dans une cellule en fonction d'une autre [Résolu/Fermé]

Signaler
Messages postés
88
Date d'inscription
samedi 5 décembre 2015
Statut
Membre
Dernière intervention
20 août 2017
-
Messages postés
88
Date d'inscription
samedi 5 décembre 2015
Statut
Membre
Dernière intervention
20 août 2017
-
Bonjour,

Je souhaiterais dans mon tableau que, si la cellule C =1, la cellule Y soit égal à la cellule H.

et ceux pour toutes les valeurs depuis la cellule A7 jusqu’à la cellule 47

exemple :

C7=1 Y7 = H7
C8=1 Y8 = H8
....... jusqu'à A47

si C7=0 ou rien alors Y7 = 0


j'ai mis en place un code VBA, dans le module 2, mais j'ai des problèmes pour qu'il fonctionne.

------------------------------------------------------------------------

Sub Macro2()

Dim i As Integer
i = 2
Do While Cells(i, 1).Value <> ""
If Range("C" & i) = "1" Then Range("Y" & i) = Range("H" & i)
i = i + 1
Loop
End Sub

----------------------------------------------------------------------------------------

1 réponse

Messages postés
52430
Date d'inscription
lundi 13 août 2007
Statut
Contributeur
Dernière intervention
12 octobre 2020
14 271
Bonjour.

Sauf si tu y tiens absolument, il n'est pas nécessaire de passer par VBA ...
En Y7, saisir la formule =SI(C7=1;H7;0) à recopier jusqu'en Y47.
1
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 60511 internautes nous ont dit merci ce mois-ci

Messages postés
88
Date d'inscription
samedi 5 décembre 2015
Statut
Membre
Dernière intervention
20 août 2017
2
Salut Raymond

Oui effectivement ça marche tres bien.

Moi je pensait, à une VBA, qui enclencherais le même résultat pour toutes les cellules de la feuille.

ma formule n'est pas bonne?

merci encore
Messages postés
3334
Date d'inscription
samedi 20 juillet 2013
Statut
Membre
Dernière intervention
9 décembre 2016
489 >
Messages postés
88
Date d'inscription
samedi 5 décembre 2015
Statut
Membre
Dernière intervention
20 août 2017

Bonjour Titi32600,
Bonjour Raymond,

Voici l'équivalent avec une macro VBA
Sub Macro2()
Dim i As Integer
For i = 7 To 47
If Range("C" & i) = "1" Then
Range("Y" & i) = Range("H" & i)
Else
Range("Y" & i) = 0
End If
Next i
End Sub


A+
Messages postés
88
Date d'inscription
samedi 5 décembre 2015
Statut
Membre
Dernière intervention
20 août 2017
2 >
Messages postés
3334
Date d'inscription
samedi 20 juillet 2013
Statut
Membre
Dernière intervention
9 décembre 2016

Salut Gyrus

Super, ça fonctionne à merveille.

Merci encore de ton aide, ainsi que Raymond.

Titi32600