Boucle à travers les cellules - Conseils Excel

Richard écrit:

Si je peux être si audacieux de demander, je vous serais reconnaissant de bien vouloir m'éclairer sur la réponse à cette énigme perplexe sur l'intégrité syntatique videlict:

Lors du référencement d'une cellule à usage externe dans VisualBasic par exemple via "Range (" F3 "). Sélectionnez" Supposons que je souhaite à la place de la colonne 1 de substituer une variable d'une boucle à la fin suivante:

For Scarab=3 To 15 Range("FScarab").Select ActiveCell.Value = Scarab * Scarab - 3 Next Scarab

par exemple.

De toute évidence, on ne peut pas simplement utiliser FScarab là où auparavant on aurait eu F3, mais il existe peut-être une méthode par laquelle le résultat souhaité peut être atteint. Autrement dit, existe-t-il un moyen de faire référence à la cellule de la colonne F et à la ligne Scarab pour la variable Scarab et si oui, pouvez-vous divulguer ces informations.

Il y a plusieurs moyens de le faire. La méthode la plus intuitive est probablement celle qui consiste à concaténer la lettre de colonne "F" avec le numéro de ligne numérique à l'intérieur de la référence Range ().

For Scarab=3 To 15 Range("F" & Scarab).Select ActiveCell.Value = Scarab * Scarab - 3 Next Scarab

La méthode suivante utilise la fonction CELLS (ligne, colonne) au lieu de la référence Range. Dans ce cas, la ligne et la colonne doivent être numériques. Votre variable de numéro de ligne est déjà numérique, vous devez donc simplement convertir le «F» en 6 dans votre tête. Vous noterez également qu'il n'est pas nécessaire de sélectionner la cellule, vous pouvez simplement lui attribuer une valeur.

For Scarab=3 To 15 Cells(Scarab, 6).Value = Scarab * Scarab - 3 Next Scarab

Enfin, il est possible de parcourir simplement chaque cellule de la plage:

For Each cell in Range("F3:F15") Cell.Value = Cell.Row * Cell.Row - 3 Next Cell

Articles intéressants...