Mettre en forme les bordures sur VBA

Bonjour,

Je souhaiterais mettre des bordures sur toutes les cellules de toute ma plage de donnée.

J'ai déjà essayé en enregistrant un macro mais mon problème est que le nombre de lignes et de colonnes de ma plage variera à chaque fois.

Quelle fonction pourrait me permettre de le généraliser avec le i et NBlignes?

Bonsoir Zaza31 ,

Joignez nous une petit fichier représentatif et vous aurez sans doute des réponses .

Bonsoir,

USEDRANGE donne la plage de cellule utilisées sur une feuille, CURRENTREGION permet de connaitre la plage dont appartient la cellule désignée, cette plage s'arrête à la première colonne et ligne vide.

Si votre tableau commence en B3 et fini en H28 alors :
ActiveSheet.Range("B3").CurrentRegion.Address donnera : $B$3:$H$28
et :
ActiveSheet.Range("F13").CurrentRegion.Address donnera également : $B$3:$H$28

Dans votre cas il suffira de tester une cellule qui est "certainement" dans la plage recherchée, vous aurez alors son adresse, il suffira d'y appliquer la mise en forme par VBA.

@ bientôt

LouReeD

Bonjour LouReeD,

Merci beaucoup, c'est exactement l'explication dont j'avais besoin.

Donc ma formule est:

ActiveSheet.Range("A1").CurrentRegion.Borders.LineStyle = xlContinuous

Et elle marche :)

Bonjour,

merci de votre retour et de vos remerciements !

Bonne continuation dans votre projet.

@ bientôt

LouReeD

Rechercher des sujets similaires à "mettre forme bordures vba"