VBA : hauteur et largeur de colonne

dionys0s

XLDnaute Impliqué
Bonjour le forum,

j'aurais souhaité comprendre comment fonctionnent la hauteur d'une ligne et la largeur d'une colonne dans Excel.
Par une ligne et une colonne respectivement de hauteur et largeur identiques (0,49 cm dans mon exemple) auront une propriété .Height et .Width différentes (respectivement 14 et 1,29). Comment se fait-ce ? Pourquoi tant de haine ? Est-ce lié à Excel ? La machine ? L'OS ? L'âge du capitaine ? Y a-t-il une possibilité pour trouver, par exemple à partir de la hauteur d'une ligne, la largeur de colonne qui ferait des cellules carrées ?

J'ai vu la fonction CentimetersToPoints, mais les points semblent être différents en matière de ligne et de colonne...

D'avance merci pour votre aide :)
 

Patrice33740

XLDnaute Occasionnel
Re : VBA : hauteur et largeur de colonne

Bonjour,

Pour la hauteur de ligne c'est pas très compliqué :
D'après Microsoft :
- Vous pouvez spécifier une hauteur de ligne de 0 (zéro) à 409.
- Cette valeur représente la hauteur exprimée en points (1 équivaut environ à 1/72 pouce ou 0,035 cm).
- La hauteur de ligne par défaut est de 12,75 points (environ 1/6 pouce ou 0,4 cm).
- Si une ligne a une hauteur de 0 (zéro), elle est masquée.

Par contre pour la largeur de colonne, difficile de faire moins simple !!!
D'après MSDN :
- La largeur par défaut d'une colonne est en effet de 8.43 caractères standard.
- Excel part de 8 caractères définis par la police standard du classeur et traduit cela dans un nombre de pixels.
- La taille du pixel (qui dépend de la résolution de l'écran) est stockée en interne par Excel.
- Une largeur de colonne de 8.43 signifie que 8.43 caractères tiennent dans la colonne.
- Si la police standard est une police non proportionnelle comme courrier (tous les caractères ont la même largeur), 8 caractères entiers tiennent dans la colonne.
- Si c'est une police proportionnelle comme Arial, vous pouvez mettre plus de i que de w dans la colonne. Les caractères considérés dans ce cas sont les chiffres (0,1, 2 3...).

En d'autre termes, la largeur de colonne dépend de la résolution d'écran et de la police par défaut. Elle peut donc être différente d'un fichier à l'autre sur un même écran !

Édit : une macro de Ti jointe
 

Fichiers joints

Dernière édition:

dionys0s

XLDnaute Impliqué
Re : VBA : hauteur et largeur de colonne

Bonjour Patrice,
Bonjour le forum,

Merci pour ces explications détaillées. J'en conclus que la prise de tête l'est encore plus avec 2 écrans, potentiellement différents...
Je vais regarder la PJ de ce pas.

Je voulais m'amuser à faire des tests avec le nombre d'Or, je sens que ça ne va pas être simple !!
 

dionys0s

XLDnaute Impliqué
Re : VBA : hauteur et largeur de colonne

Question annexe : dans la Sub
VB:
Sub RowHeight(Plage As Range, ByVal Cm#)
à quoi sert le # ?
Edit : c'est bon j'ai compris...
 
Dernière édition:

Créez un compte ou connectez vous pour répondre

Vous devez être membre afin de pouvoir répondre ici

Créer un compte

Créez un compte Excel Downloads. C'est simple!

Connexion

Vous avez déjà un compte? Connectez vous ici.

Haut Bas