Comment peut-on faire varier, dans un code, le nom des cellules svp ?
Exemple (résolu) :
Pour programmer l’effacement de lignes inutiles (car vides) dans l’affichage de résultats, je m’en suis sorti de la façon suivante :
For n=1 to 100
If (Range("B" & n) = "") ThenRows(n).Delete
Next n
Mais je ne sais pas comment faire pour une plage :
Range("A"&i:"A"&j).Activate
et
ActiveCell.FormulaR1C1 = "=MAX(R[-100+k]C:R[-1]C)"
ne marchent pas ?
Pour : Range("A"&i:"A"&j).Activate il y a déjà eu un post sur le sujet aujourd'hui...
Code:
Range("A" & i & ":A" & j).activate
Pour le reste tout dépend de ce que tu veux faire exactement ?
Inscrire une formule dans la feuille ou noter le résultat de cette formule ?
Généralement l'utilisation de VBA vise à obtenir la 2ème version.
Range("A"&i:"A"&j) La bonne syntaxe est : Range("A" & i ":A" & j)
ActiveCell.FormulaR1C1 = "=MAX(R[-100+k]C:R[-1]C)" Là, il faut le savoir, tu peux rentrer la formule comme sur la feuille Excel. ActiveCell.FormulaLocal = "=MAX(A" & Deb & "A" & Fin & ")"
J'espère que ce sera clair pour toi !
A+
Edit : Oups, salut Spitnolan08, désolé tu as été plus rapide.
Merci beaucoup à tous les 2 pour ces réponses ultra-rapides que je testerai demain:
Bruno, personnellement je ne trouve pas logique que le séparateur : soit "prisonnier" des guillemets ). Je note aussi que la réponse de Spitnolan comporte un 1 supplémentaire.
Spitnolan08, je voudrais en effet noter le résultats de cette formule. Je suis très surpris de la syntaxe de Bruno mais là encore je n'ai pas dû comprendre la logique des guillemets )
Merci encore!