Vous devrez peut-être régulièrement mettre à l’échelle les graphiques de votre document selon un certain pourcentage. L’utilisation des menus pour effectuer la mise à l’échelle peut être fastidieuse, vous pouvez donc procéder à la mise à l’échelle en utilisant une macro que vous pouvez attribuer à un bouton de la barre d’outils ou à une touche de raccourci. La macro suivante gérera très bien la mise à l’échelle:

Sub PictSize()

Dim PercentSize As Integer

PercentSize = InputBox("Enter percent of full size", _       "Resize Picture", 75)



If Selection.InlineShapes.Count > 0 Then         Selection.InlineShapes(1).ScaleHeight = PercentSize         Selection.InlineShapes(1).ScaleWidth = PercentSize     Else         Selection.ShapeRange.ScaleHeight Factor:=(PercentSize / 100), _           RelativeToOriginalSize:=msoCTrue         Selection.ShapeRange.ScaleWidth Factor:=(PercentSize / 100), _           RelativeToOriginalSize:=msoCTrue     End If End Sub

La macro demande d’abord un pourcentage selon lequel vous souhaitez mettre à l’échelle l’image sélectionnée, offrant 75 (75%) par défaut. Lorsque vous spécifiez un pourcentage, la macro vérifie ensuite si le graphique sélectionné est un graphique en ligne ou flottant. La raison en est que la spécification de l’objet est différente dans chaque cas, ainsi que la façon dont la mise à l’échelle est spécifiée. Les objets en ligne appartiennent à la collection InlineShapes, tandis que les objets flottants sont définis à l’aide de l’objet ShapeRange.

Si vous souhaitez redimensionner tous les graphiques de votre document selon le même pourcentage, il vous suffit de modifier la macro ci-dessus afin qu’elle parcourt chacun des graphiques en ligne, puis chacun des graphiques flottants.

Sub AllPictSize()

Dim PercentSize As Integer     Dim oIshp As InlineShape     Dim oshp As Shape

PercentSize = InputBox("Enter percent of full size", _       "Resize Picture", 75)



For Each oIshp In ActiveDocument.InlineShapes         With oIshp             .ScaleHeight = PercentSize             .ScaleWidth = PercentSize         End With     Next oIshp

For Each oshp In ActiveDocument.Shapes         With oshp             .ScaleHeight Factor:=(PercentSize / 100), _               RelativeToOriginalSize:=msoCTrue             .ScaleWidth Factor:=(PercentSize / 100), _               RelativeToOriginalSize:=msoCTrue         End With     Next oshp End Sub

_Note: _

Si vous souhaitez savoir comment utiliser les macros décrites sur cette page (ou sur toute autre page des sites WordTips), j’ai préparé une page spéciale qui comprend des informations utiles.

lien: / wordribbon-WordTipsMacros [Cliquez ici pour ouvrir cette page spéciale dans un nouvel onglet de navigateur].

WordTips est votre source pour une formation Microsoft Word rentable.

(Microsoft Word est le logiciel de traitement de texte le plus populaire au monde.) Cette astuce (7694) s’applique à Microsoft Word 97, 2000, 2002 et 2003. Vous pouvez trouver une version de cette astuce pour l’interface ruban de Word (Word 2007 et plus tard) ici:

link: / wordribbon-Scaling_Graphics_in_a_Macro [Scaling Graphics in a Macro].