MS Word: centrar solo la imagen en una lista

MS Word: centrar solo la imagen en una lista

Hice una lista numerada en Word 2010. Cada entrada de la lista también tiene una imagen. Quiero alinear al centro todas las imágenes, pero cuando intento alinear al centro una imagen, el texto de arriba también se centra.

MS Word 2010 - Lista con imágenes

¿Cómo puedo centrar y alinear imágenes en la lista sin centrar el texto de arriba y de abajo?

Respuesta1

Bien, esto es lo que debes hacer:

  1. Haga clic derecho en la imagen y seleccione 'Tamaño y posición...'
  2. Seleccione la pestaña 'Ajuste de texto'
  3. Seleccione 'Arriba y Abajo'
  4. Seleccione la pestaña 'Posición'
  5. En la sección "Horizontal", seleccione "Alineación" y luego seleccione "Centrado" en relación con "Columna".

Desafortunadamente, hacer esto con varias imágenes es problemático. El pintor de formato no funcionará. Además, el simple hecho de usar Macro Recorder causa problemas al intentar seleccionar la imagen.

Por lo tanto, crear una macro VBA y vincularla a una clave parecería ser la única manera de hacer esto súper eficiente. Aquí hay dos publicaciones útiles a este respecto:

A partir de la primera de estas referencias, probé la siguiente macro de VBA. ¡Parece funcionar bien!

Sub FormatMyPicture()  
   Dim myShape As Shape

   If Selection.InlineShapes.Count > 0 Then
       Set myShape = Selection.InlineShapes(1).ConvertToShape
   ElseIf Selection.ShapeRange.Count > 0 Then
       Set myShape = Selection.ShapeRange(1)
   Else
       MsgBox "Please select a picture first."
       Exit Sub
   End If

   With myShape
       .WrapFormat.Type = wdWrapTopBottom
       .WrapFormat.DistanceTop = InchesToPoints(0.2)
       .WrapFormat.DistanceBottom = InchesToPoints(0.2)
       .RelativeHorizontalPosition = wdRelativeHorizontalPositionPage
       .Left = wdShapeCenter
   End With
End Sub

Respuesta2

Para alinear y centrar todas las imágenes en línea en MS Word:

Paso 1: Presione Alt+ F11para abrir el Editor VBA

Paso 2: Ir aInsertentoncesModule

Paso 3: En el editor VBA, escriba el siguiente fragmento de código

Sub centerPictures()
  Dim shpIn As InlineShape, shp As Shape
  For Each shpIn In ActiveDocument.InlineShapes
    shpIn.Select
    Selection.ParagraphFormat.Alignment = wdAlignParagraphCenter
  Next shpIn
  For Each shp In ActiveDocument.Shapes
    shp.Select
    Selection.ParagraphFormat.Alignment = wdAlignParagraphCenter
  Next shp
End Sub

Paso 4: Presione F5o presioneRun Subpara aplicar este cambio

Respuesta3

Espero que esto ayude a alguien especial.

Sub rezize_center_newline()

Dim i As Long
Dim shpIn As InlineShape, shp As Shape

With ActiveDocument
    For i = 1 To .InlineShapes.Count
        With .InlineShapes(i)
            .Height = InchesToPoints(4)
            .Width = InchesToPoints(5.32)
            .Range.InsertAfter Chr(13)
        End With
    Next i
    For Each shpIn In ActiveDocument.InlineShapes
        shpIn.Select
        Selection.ParagraphFormat.Alignment = wdAlignParagraphCenter
    Next shpIn
    For Each shp In ActiveDocument.Shapes
        shp.Select
        Selection.ParagraphFormat.Alignment = wdAlignParagraphCenter
    Next shp
End With
End Sub

información relacionada