J'ai fais ce code afin de calculer dans K10 "J10 diviser par 12", si C10 est différent de ""
J'aimerais que cette opération de répète la la ligne du dessous aux memes conditions (dans K11 "J11 /12", et ainsi de suite tant qu'il y a un contenu en colonne C
VB:
Sub test()
If Range("C10") <> "" Then
Range("K10").Value = Range("J10") / 12 & " /an"
End If
End Sub
Possible d'avoir de l'aide ?
Il est possible de limiter à 100 lignes si on le souhaite, j'avais penser à la fonction next, mais sans idée précise.
Range("K" & n ).Value = iif(Range("C" & n ).value = "","",Range("J" & n) .value/ 12 & " /an")
Sans préjudice de ce qu'il est un peu abusif d'utiliser vba là où une simple formule excel suffirait.
J'appelle par ailleurs ton attention sur le fait qu'il est maladroit d'ajouter, comme tu le fais, du texte réel (ton " /a") qui compliquerait énormément l'utilisation ultérieure de cette donnée dans des expressions conditionnelles, etc ...
Alors que Excel te permet de donner à ta cellule un format spécialisé, lequel a pour effet d'afficher avec texte ajouté, mais de conserver la valeur...
Range("K" & n ).Value = iif(Range("C" & n ).value = "","",Range("J" & n) .value/ 12 & " /an")
Sans préjudice de ce qu'il est un peu abusif d'utiliser vba là où une simple formule excel suffirait.
J'appelle par ailleurs ton attention sur le fait qu'il est maladroit d'ajouter, comme tu le fais, du texte réel (ton " /a") qui compliquerait énormément l'utilisation ultérieure de cette donnée dans des expressions conditionnelles, etc ...
Alors que Excel te permet de donner à ta cellule un format spécialisé, lequel a pour effet d'afficher avec texte ajouté, mais de conserver la valeur intacte à d'autres fins. Il serait encore mieux de donner tout simplement un titre explicite à la colonne (genre "machin annuel") qui supprime la nécessité d'un " /an à chaque donnée).
Sub Marine(Optional Yellow) '-< même pas honte ;-)
Dim dL&: dL = Cells(Rows.Count, 3).End(3).Row - 9
[K10].Resize(dL).FormulaR1C1 = "=REPT(ROUND(RC10/12,2)&"" /an"",RC3<>"""")"
End Sub