Bonjour,
Je suis en train de faire différentes mises en page et je veux que dans tous les cas, la largeur de la page imprimée soit identique.
J'ai donc fait en sorte que toutes les largeurs aient une valeur de 65 en me basant sur le code suivant :
Bizarrement, je me suis aperçu que certaines pages s'imprimaient sans saut de page vertical alors que d'autres en necessitaient un.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 Dim lalargeur As Double Dim colfin As Integer ActiveSheet.PageSetup.Zoom = 100 zone_impr = ActiveSheet.PageSetup.PrintArea colfin = Range(zone_impr).Columns.Count For Each cell In Range(Cells(1, 1), Cells(1, colfin)) lalargeur = lalargeur + cell.ColumnWidth Next cell
J'ai alors vérifié les largeurs avec le même code mais basé sur "cell.width" au lieu de "cell.columnwidth".
Et j'ai alors vu que mes largeurs de pages variaient entre 570 et 670 ! (+ 17 %)
Premièrement, j'aimerais donc savoir pourquoi des pages qui ont exactement la même largeur quand on additionne les "columnwidth" peuvent avoir des largeurs très différentes quand on additionne les "width" ?
Deuxièmement, comment faire pour régler une largeur de colonne en se basant sur sa largeur de cellule (puisque les largeurs de colonnes en semblent pas fiables pour obtenir une même largeur à l'impression) ?
Comme mon intuition me disait qu'à chaque nouvelle colonne ajoutée, il devait y avoir des problèmes d'arrondis qui se font différemment avec les deux méthodes, j'ai fait les relevés pour comparer les rapports de grandeurs entre les deux types de largeurs et le nombre de colonnes des pages correspondantes. Globalement, les chiffres indiquent que je suis dans le vrai. Plus il y a de colonnes dans une page et plus la largeur en columnwidth est élevée par rapport à la largeur en width :
feuille width columnwidth rapport nb colonnes
6 564.75 64.99 8.69 6
8 570.75 65.08 8.77 7
7 570 64.99 8.77 7
9 570 64.98 8.77 7
10 570 64.98 8.77 7
11 573 64.77 8.85 9
4 576 65.08 8.85 8
2 578.25 65.11 8.88 9
16 582.75 64.8 8.99 15
12 585 64.97 9.00 11
3 587.25 64.97 9.04 11
15 592.5 65.2 9.09 17
14 596.25 64.82 9.20 19
1 595.5 64.7 9.20 13
5 597.75 61.08 9.79 19
13 604.5 58.79 10.28 28
Partager