Un immense bonjour ou bonsoir à vous tous et toutes.
Quoi que très fatigué après lourde intervention, je suis plus que heureux d'être de retour à la maison et souhaite vous faire partager ma joie avec ces deux macros ci-dessous (Excel 2002 et 2003).
Ces deux macros vont permettre d'afficher une fenêtre où vous pourrez indiquer la mesure désirée en centimètres, Excel se chargeant ensuite d'ajuster les lignes et les colonnes selon votre demande.
Créer deux boutons pour les macros ou un seul par appel de macro.
Voici pour tous ceux et celles que ceci intéressse, les macros de paramétrage d'une feuille Excel en centimètre.
(Micro hebdo n° 376 du 30 juin 2005)
Sub LignesEnCm()
Dim cm As Single
cm = Application.InputBox('hauteur de la ligne en cm.', Type:=1)
If cm Then
Selection.RowHeight = Application.CentimetersToPoints (cm)
End If
End Sub
Sub ColonnesEnCm()
Dim cm As Single, points As Single, savewidth As Single
Dim count As Single
Application.ScreenUpdating = False
cm = Application.InputBox ('Largeur de la colonne en cm.', Type:=1)
If cm = False Then Exit Sub
points = Application.CentimetersToPoints (cm)
savewidth = ActiveCell.ColumnWidth
ActiveCell.ColumnWidth = 255
If points > ActiveCell.Width Then
MsgBox 'La largeur de' & cm & 'est trop large' & Chr(10) & _
'la valeur maxi est de ' & _
Format (ActiveCell.Width / 28.3464566929134, _
'0.00'), vbOkOnly + vbExclamation, 'largeur non valable'
ActiveCell.ColumnWidth = savewidth
Exit Sub
End If
lowerwidth = 0
ipwidth = 255
ActiveCell.ColumnWidth = 127.5
curwidth = ActiveCell.ColumnWidth
count = 0
While (ActiveCell.Width <> points) And (count < 20)
If ActiveCell.Width < points Then
lowerwidth = curwidth
Selection.ColumnWidth = (curwidth + upwidth) / 2
Else
upwidth = curwidth
Selection.ColumnWidth = (curwidth + lowerwidth) / 2
End If
cirwidth = ActiveCell.ColumnWidth
count = count + 1
Wend
End Sub
Je vous dit à plus
Papy Novice
Quoi que très fatigué après lourde intervention, je suis plus que heureux d'être de retour à la maison et souhaite vous faire partager ma joie avec ces deux macros ci-dessous (Excel 2002 et 2003).
Ces deux macros vont permettre d'afficher une fenêtre où vous pourrez indiquer la mesure désirée en centimètres, Excel se chargeant ensuite d'ajuster les lignes et les colonnes selon votre demande.
Créer deux boutons pour les macros ou un seul par appel de macro.
Voici pour tous ceux et celles que ceci intéressse, les macros de paramétrage d'une feuille Excel en centimètre.
(Micro hebdo n° 376 du 30 juin 2005)
Sub LignesEnCm()
Dim cm As Single
cm = Application.InputBox('hauteur de la ligne en cm.', Type:=1)
If cm Then
Selection.RowHeight = Application.CentimetersToPoints (cm)
End If
End Sub
Sub ColonnesEnCm()
Dim cm As Single, points As Single, savewidth As Single
Dim count As Single
Application.ScreenUpdating = False
cm = Application.InputBox ('Largeur de la colonne en cm.', Type:=1)
If cm = False Then Exit Sub
points = Application.CentimetersToPoints (cm)
savewidth = ActiveCell.ColumnWidth
ActiveCell.ColumnWidth = 255
If points > ActiveCell.Width Then
MsgBox 'La largeur de' & cm & 'est trop large' & Chr(10) & _
'la valeur maxi est de ' & _
Format (ActiveCell.Width / 28.3464566929134, _
'0.00'), vbOkOnly + vbExclamation, 'largeur non valable'
ActiveCell.ColumnWidth = savewidth
Exit Sub
End If
lowerwidth = 0
ipwidth = 255
ActiveCell.ColumnWidth = 127.5
curwidth = ActiveCell.ColumnWidth
count = 0
While (ActiveCell.Width <> points) And (count < 20)
If ActiveCell.Width < points Then
lowerwidth = curwidth
Selection.ColumnWidth = (curwidth + upwidth) / 2
Else
upwidth = curwidth
Selection.ColumnWidth = (curwidth + lowerwidth) / 2
End If
cirwidth = ActiveCell.ColumnWidth
count = count + 1
Wend
End Sub
Je vous dit à plus
Papy Novice