Bizarrerie d'une macro toute simple

Bonjour le forum,
Vous allez trouver ma question un peu bête, mais j'ai une toute petite macro depuis quelques années qui se lance au démarrage d'Excel ou par un raccourci, lorsque j'ai beaucoup modifié un fichier. Elle fait juste la sélection de la zone jusqu'à la dernière cellule non vide.

Sub Auto_ouvrir()
'
' Auto_ouvrir Macro
' Macro enregistrée le 12/01/2024 par Rv
'
' Touche de raccourci du clavier : Ctrl+w
'
ActiveSheet.UsedRange.Select

End Sub

Mais quand je la lance sur le fichier ci-joint, je n'ai que des bordures à cet endroit.

Elle sélectionne bien verticalement la colonne O.
Mais horizontalement, elle sélectionne 1 ligne de plus.
Sur mes autres fichiers, j'ai presque toujours du texte ou des formules et la macro sélectionne bien la dernière cellule non vide en bas à droite.

Ce n'est pas un problème, mais c'est bizarre non !?

30fichier-exemple.xls (13.50 Ko)

Bonsoir,

Rien de bizarre, la dernière ligne de la feuille est la ligne 31, elle n'est pas vide puisque des bordures, en haut des cellules, sont présentes.

Lorsque l'on place une bordure en bas d'une cellule, on en place une implicitement en haut de la cellule du dessous.

Bonne soirée à vous

Eric

Bonsoir Eric,

Merci pour la réponse.
Dans mon fichier exemple, c'est la ligne 32 qui est considérée comme non vide, je me doute que c'est juste pour les bordures en bas de la ligne 31.

Ok, mais si je positionne en cellule P8 et que je fais bouton de droite puis Format de cellule puis Bordure, on voit bien une bordure à gauche, pourtant la macro ne sélectionne pas la colonne P.
Alors que si je sélectionne la cellule D32, on voit aussi une bordure en haut et la macro sélectionne la ligne 32.

Bonsoir,

Je n'arrive plus à retrouver où, mais j'ai lu sur le site de Microsoft qu'il était très fréquent que la UsedRange reste plus étendue qu'elle le devrait, notamment lors de la suppression de formules/formats.

Donc si par hasard a un moment vous avez modifié une cellule un peu plus loin, ceci expliquerait cela.

Il y a un addin de Microsoft pour "nettoyer" le classeur justement pour cela. Essayez de supprimer la ligne/colonne qui pose problème sinon.

Bonsoir,

Comme le dit saboh12617, cette fonction laisse à désirer.

Le classeur étant en mode de Compatibilité (Excel 97- 2003), l'anomalie vient peut-être de là.

Bonjour à tous,

@saboh12617 à raison, Excel à tendance à garder comme "utilisées" des cellules ou il n'y à rien

Pour le nettoyage des classeurs ou "dégraisser el mammouth" il faut ceci

https://forum.excel-pratique.com/applications/degraissez-le-mammouth-4627

Bonjour et merci à tous ^^

C'est vrai que Excel 2003 est un peu vieillot, mais pour le moment, il ne suffit ^^
Je passe le post en résolu même si dans ce cas y'a pas grand-chose à résoudre
Je vais voir comment "dégraisser le mammouth".

Pour info, j'ai supprimé la dernière ligne de mon fichier exemple et j'ai lancé la macro, Excel a bien gardé la "réelle" dernière ligne non vide.
Maintenant, il ne reste que 2 cellules non vides assez éloignées, l'une avec une bordure à gauche et l'autre une bordure à droite.
CQFD, Excel n'aime pas les bordures en bas, ou alors, il considère comme non vide plusieurs cellules côte à côte juste remplies de bordure ^^ lolll

Bonjour,

Pour info, j'ai publié un article sur l'épaisseur des bordures et l'incidence que cela peut avoir.

Voir Epaisseur des bordures

Bonne journée

Rechercher des sujets similaires à "bizarrerie macro toute simple"