Word tiene insieme un bel po ‘di informazioni sulle immagini che inserisci nei tuoi documenti. Queste informazioni sono necessarie in modo che Word sappia come ridimensionare, posizionare e visualizzare le immagini. Se desideri trovare ulteriori informazioni sulle immagini nel tuo documento, devi sapere qualcosa su come Word archivia le informazioni.

Le immagini vengono memorizzate come uno dei due tipi di oggetti grafici: forme regolari o forme in linea. Le forme regolari sono quelle che risiedono sul livello di disegno, al contrario delle forme in linea, che risiedono nel livello di testo. Entrambi i tipi di oggetti vengono archiviati con diverse raccolte di oggetti. Le forme regolari sono nella raccolta Shapes e le forme inline sono archiviate nella raccolta InlineShapes. Per accedere alle informazioni sugli oggetti, è sufficiente utilizzare un piccolo VBA.

La seguente macro VBA funzionerà in Word 2000 (o versioni successive) per creare un documento che mostra la dimensione di tutti gli oggetti grafici all’interno di un documento, sia in punti che in pixel:

Sub FigureInfo()

Dim iShapeCount As Integer     Dim iILShapeCount As Integer     Dim DocThis As Document     Dim J As Integer     Dim sTemp As String

Set DocThis = ActiveDocument     Documents.Add

iShapeCount = DocThis.Shapes.Count     If iShapeCount > 0 Then         Selection.TypeText Text:="Regular Shapes"

Selection.TypeParagraph     End If     For J = 1 To iShapeCount         Selection.TypeText Text:=DocThis.Shapes(J).Name         Selection.TypeParagraph         sTemp = "     Height (points): "

sTemp = sTemp & DocThis.Shapes(J).Height         Selection.TypeText Text:=sTemp         Selection.TypeParagraph         sTemp = "     Width (points): "

sTemp = sTemp & DocThis.Shapes(J).Width         Selection.TypeText Text:=sTemp         Selection.TypeParagraph         sTemp = "     Height (pixels): "

sTemp = sTemp & PointsToPixels(DocThis.Shapes(J).Height, True)

Selection.TypeText Text:=sTemp         Selection.TypeParagraph         sTemp = "     Width (pixels): "

sTemp = sTemp & PointsToPixels(DocThis.Shapes(J).Width, False)

Selection.TypeText Text:=sTemp         Selection.TypeParagraph         Selection.TypeParagraph     Next J

iILShapeCount = DocThis.InlineShapes.Count     If iILShapeCount > 0 Then         Selection.TypeText Text:="Inline Shapes"

Selection.TypeParagraph     End If     For J = 1 To iILShapeCount         Selection.TypeText Text:="Shape " & J         Selection.TypeParagraph         sTemp = "     Height (points): "

sTemp = sTemp & DocThis.InlineShapes(J).Height         Selection.TypeText Text:=sTemp         Selection.TypeParagraph         sTemp = "     Width (points): "

sTemp = sTemp & DocThis.InlineShapes(J).Width         Selection.TypeText Text:=sTemp         Selection.TypeParagraph         sTemp = "     Height (pixels): "

sTemp = sTemp & PointsToPixels(DocThis.InlineShapes(J).Height, True)

Selection.TypeText Text:=sTemp         Selection.TypeParagraph         sTemp = "     Width (pixels): "

sTemp = sTemp & PointsToPixels(DocThis.InlineShapes(J).Width, False)

Selection.TypeText Text:=sTemp         Selection.TypeParagraph         Selection.TypeParagraph     Next J End Sub

Questa macro non funziona in Word 97 perché Word 97 non riconosce l’istruzione PointsToPixels. Se rimuovi le righe che utilizzano questa istruzione (o crei la tua funzione PointsToPixels), la macro funzionerà perfettamente con Word 97.

Notare che la macro restituisce i nomi di forme regolari, ma non i nomi di forme inline. La ragione di ciò è che Word non mantiene i nomi delle forme inline. Quando inserisci una forma regolare nel tuo documento (di nuovo, sul livello di disegno), Word assegna un nome alla forma, come Rettangolo 2 o Ovale 3.

_Nota: _

Se desideri sapere come utilizzare le macro descritte in questa pagina (o in qualsiasi altra pagina dei siti WordTips), ho preparato una pagina speciale che include informazioni utili.

WordTips è la tua fonte di formazione economica su Microsoft Word.

(Microsoft Word è il software di elaborazione testi più popolare al mondo.) Questo suggerimento (1497) si applica a Microsoft Word 97, 2000, 2002 e 2003. È possibile trovare una versione di questo suggerimento per l’interfaccia a nastro di Word (Word 2007 e più tardi) qui: