Ich habe in Word 2010 eine nummerierte Liste erstellt. Jeder Listeneintrag hat auch ein Bild. Ich möchte alle Bilder zentrieren, aber wenn ich versuche, ein Bild zu zentrieren, wird der Text darüber ebenfalls zentriert.
Wie kann ich Bilder in der Liste zentrieren, ohne den Text darüber und darunter zu zentrieren?
Antwort1
Okay, so gehen Sie vor:
- Klicken Sie mit der rechten Maustaste auf das Bild und wählen Sie „Größe und Position …“
- Wählen Sie die Registerkarte „Textumbruch“
- Wählen Sie „Oben und unten“
- Wählen Sie die Registerkarte „Position“
- Wählen Sie im Abschnitt „Horizontal“ die Option „Ausrichtung“ und dann „Zentriert“ relativ zu „Spalte“ aus.
Leider ist es problematisch, dies für mehrere Bilder zu tun. Format übertragen funktioniert nicht. Auch die einfache Verwendung des Makrorecorders verursacht Probleme beim Versuch, das Bild auszuwählen.
Die einzige Möglichkeit, dies supereffizient zu machen, ist also, ein VBA-Makro zu erstellen und es an eine Taste zu binden. Hier sind zwei hilfreiche Beiträge dazu:
- https://groups.google.com/forum/?fromgroups=#!topic/microsoft.public.word.vba.general/j4ZaBiOYKDU
- https://stackoverflow.com/questions/9809475/insert-resize-and-relocate-image-using-a-microsoft-word-macro
Ausgehend von der ersten dieser Referenzen habe ich das folgende VBA-Makro getestet. Es scheint gut zu funktionieren!
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
Antwort2
So richten Sie alle Inline-Bilder in MS Word zentriert aus:
Schritt 1: Drücken Sie Alt+ F11, um den VBA-Editor zu öffnen
Schritt 2: Gehe zuInsert
DannModule
Schritt 3: Geben Sie im VBA-Editor den folgenden Codeausschnitt ein
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
Schritt 4: Drücken Sie F5oder drücken SieRun Sub
um diese Änderung anzuwenden
Antwort3
Hoffe, das wird jemand Besonderem helfen
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