XL 2016 Réduire le temps d'execution

linebich

XLDnaute Junior
Bonsoir forum ,
est ce que c'est possible de reduire ce code qui a pour objectif d'enlever les bordures d'un tableau
With range("TABF1").Borders(xlEdgeLeft)
.LineStyle = xlNone
End With
With range("TABF1").Borders(xlEdgeTop)
.LineStyle = xlNone
End With
With range("TABF1").Borders(xlEdgeBottom)
.LineStyle = xlNone
End With
With range("TABF1").Borders(xlEdgeRight)
.LineStyle = xlNone
End With

With range("TABF1").Borders(xlInsideHorizontal)
.LineStyle = xlNone
End With
With range("TABF1").Borders(xlDiagonalDown)
.LineStyle = xlNone
End With
With range("TABF1").Borders(xlDiagonalUp)
.LineStyle = xlNone
End With
With range("TABF1").Borders(xlInsideVertical)
.LineStyle = xlNone
End With
 

Monptipiton

XLDnaute Nouveau
Mais à mon avis ça raccourci plus le code que le temps... ;-)

Bonsoir,

Pas d'accord. A chaque ligne de code ayant une action entraînant un rafraichissement d'écran se cumulera un ralentissement dans l'exécution de la macro. Donc une ligne s’exécutera beaucoup plus rapidement que plusieurs.

Il y a la possibilité d'intégrer application.screenupdating = false en début de code, et le repasser à true en fin de code, ça améliore nettement.

Après linebich, dans un souci d'aérer le code initial, je resterai sur With range("TABF1") plutôt que With range("TABF1").Borders (blablabla). Ça va permettre de supprimer des dizaines de lignes et d'être aussi clair sinon plus au niveau du code (mon avis). Cette façon de faire peut s'appliquer à d'autres cas ;)
 

Discussions similaires

Statistiques des forums

Discussions
311 730
Messages
2 081 989
Membres
101 856
dernier inscrit
Marina40