Code VBA pour une condition

Bonjour à tous,

Débutant un peu en VBA, j'aurais besoin d'une aide pour effectuer un code qui permette d'intégrer une condition SI dans un code VBA et la recopier jusqu"à la dernière ligne de mon tableau à partir de ma ligne I4 sachant que les lignes peuvent variées. En faite j'ai une colonne AU qui me donne une marge Finale et une colonne AS qui me donne une marge initiale.

Je ne sais pas trop comment écrire un code qui me permettrais de dire que si la marge finale est inférieure à la marge initiale alors apparaît Manuel sinon c'est Automatique soit la formule excel suivante =SI(AU4<AS4;"manuel";"Automatique"). J'aimerais par la suite recopier cette formule sur la colonne I à partir de la ligne 4 jusqu'à la dernière ligne X du tableau puisque les lignes de marge varies d'un mois sur l'autre.

en vous remerciant d'avance pour votre aide.

Florian

Bonjour

sachant que les lignes peuvent variées

Sans voir le fichier, c'est déjà plus difficile.

Le nombre de ligne importe peu du moment que tu indiques la colonne où ce nombre de ligne est remplie, et correspondant au nombre de lignes où tu veux le résultat de ta formule.

Exemple avec explications

La colonne servant de départ (colonne remplie est la c dans cet exemple)

Le Code dans le Module

Sub Action()
Dim Cel As Range
'si la colonne c est celle de référence (remplie)
' la colonne I est 6 colonnes à droite d'où le Offset(0,6)
For Each Cel In Range("c4", Range("c4").End(xlDown)).Offset(0, 6)
' ta formule en VBA
If Cel.Offset(0,38)<Cel.Offset(0,36) Then
Cel.Value = "manuel"
Else
Cel.Value="Automatique"
End If
Next Cel
End Sub

Cordialement

14florian.zip (7.43 Ko)

Vraiment Merci Amadeus, cela fonctionne parfaitement et me permet de mieux comprendre comment fonctionner dans l'avenir.

Rechercher des sujets similaires à "code vba condition"