Utilisation de For…Next Loop dans les macros
En tirant parti de la structure For…Next Loop, vous pouvez automatiser le remplissage de cellules dans des feuilles de calcul Excel avec des données spécifiques. For…Next Loop vous permet d’itérer sur des lignes ou des colonnes dans une plage spécifiée, ce qui le rend très efficace pour répéter des tâches dans le remplissage de données.
Exemple : Remplir une plage de cellules avec des résultats de sommation de lignes et de colonnes
Voici un exemple d’macro qui utilise For…Next Loop pour remplir la plage de cellules A1 :E10 avec la valeur générée par la somme entre le numéro de ligne et le numéro de colonne.
Sub Fill_Cells_With_Loop()
Dim i As Integer, j As Integer
For i = 1 To 10
For j = 1 To 5
Cells(i, j).Value = i + j
Next j
Next i
With Range(“A1:E10”)
.Font.Bold = True
.Interior.Color = RGB(224, 255, 255)
End With
End Sub
Explication du code :
- For i =1 To 10 : La première boucle pour l’itération à travers les rangées, de 1 à 10 (rangées 1 à 10).
- For j =1 To 5 : La deuxième boucle pour les itérations à travers les colonnes, de 1 à 5 (colonnes A à E).
- Cells(i, j).Value =i + j : Remplissez la cellule avec le résultat de la somme entre le numéro de ligne (i) et le numéro de colonne (j).
- With Range(“A1 :E10”) : Mettez en forme les cellules A1 à E10 avec du texte en gras et un fond bleu clair.
Autres articles intéressants
Utilisation de la fonction Chr() pour créer des caractères
La fonction Chr() dans VBA fonctionne pour générer des caractères qui correspondent à ASCI codes. ASCII codes sont des nombres qui représentent des caractères dans les systèmes informatiques. Par exemple, le code 65 indique la lettre A, tandis que le code 66 indique la lettre B, et ainsi de suite.
Vous pouvez utiliser la fonction Chr() pour créer des macros qui remplissent les cellules avec des caractères générés à partir de codes ASCII, de manière aléatoire ou spécifique.
Exemple : Remplir une plage de cellules avec des caractères aléatoires à l’aide de la fonction chr()
Sub Fill_Cells_With_Random_Characters()
Dim i As Integer, j As Integer
Dim asciiCode As Integer
For i = 1 To 5
For j = 1 To 5
asciiCode = Int(26 * Rnd) + 65
Cells(i, j).Value = Chr(asciiCode)
Next j
Next i
With Range(“A1:E5”)
.Font.Bold = True
.Interior.Color = RGB(255, 228, 196)
End With
End Sub
Explication du code :
- Dim asciiCode As Integer : Déclare une variable pour stocker le code ASCII.
- Int(26*Rnd) + 65 : Génère un nombre aléatoire entre 65 et 90. Le code 65 est A en ASCII et le code 90 est Z.
- Rnd génère un nombre aléatoire entre 0 et 1.
- 26 * Rnd génère un nombre entre 0 et 25 puis ajoute 65 pour obtenir le code ASCII entre 65(A) et 90(Z).
- Cells(i, j).Value = Chr(asciiCode) : Remplit une cellule avec des caractères générés par Chr() basés sur le code ASCII.
- With Range(“A1 :E5”) : Met en forme une plage de cellules A1 :E5 avec du texte en gras et un arrière-plan de couleur pêche (RGB(255, 228, 196)).
Conclusion
En utilisant Excel VBA 365, vous pouvez améliorer votre efficacité au travail dans Excel. L’apprentissage de la création et de l’édition de macro fournira une compétence inestimable dans le monde du travail moderne, où l’automatisation est la clé du succès.