Discussion:
Bildgröße und Position per Makro verändern
(zu alt für eine Antwort)
T. Kuechler
2009-06-09 07:12:00 UTC
Permalink
Hallo.

Ich möchte per Makro in der Kopfzeile eine Grafik auswählen und diese dann
gegen eine andere Grafik austauschen.

Mit
ActiveDocument.Sections(1).Headers(wdHeaderFooterPrimary).Shapes.SelectAll
Selection.InlineShapes.AddPicture
schaffe ich es zumindest die alte Grafik gegen eine neue auszutauschen.

Die Probeleme sind, dass die neue Grafik viel größer ist und sie immer
linksbündig eingefügt wird.
Ich habe bisher noch nicht herausgefunden, wie ich die Höhe und Breit der
Grafik verändern oder wie ich die Grafik an eine bestimmte Stelle setzten
kann. Der Makrorekorder zeichnet entweder nichts auf oder die Funktionen kann
ich währende der Aufnahme nicht auswählen.

Ich benutze Word 2007.

Kann mir da jemand helfen.
Danke.

Mit freundlichen Grüßen
T. Kuechler
Robert M. Franz [RMF]
2009-06-09 07:24:02 UTC
Permalink
Hallo T.

T. Kuechler wrote:
[..]
Post by T. Kuechler
Ich möchte per Makro in der Kopfzeile eine Grafik auswählen und diese dann
gegen eine andere Grafik austauschen.
wende Dich am besten gleich an die .vba-Gruppe. Mit rein aufgezeichnetem
Code wirst Du selten froh, und wenn es um Kopfzeilen geht, erst recht ...

Gruss
Robert
--
/"\ ASCII Ribbon Campaign | MSFT |
\ / | MVP | Scientific Reports
X Against HTML | for | with Word?
/ \ in e-mail & news | Word | http://www.masteringword.eu/
Bernhard Sander
2009-06-09 09:56:29 UTC
Permalink
Hallo T.
Post by T. Kuechler
Ich möchte per Makro in der Kopfzeile eine Grafik auswählen und diese dann
gegen eine andere Grafik austauschen.
Eine Grafik in dem Sinne auszutauschen, dass zwar das Bild ein anderes ist, aber
die sonstigen Eigenschaften wie Größe, Position usw. vom alten Bild übernommen
wird, das geht in Word nicht, weder per VBA noch per Oberfläche. Du kannst
allenfalls eine frische Grafik einfügen, dann müssen die weiteren Eigenschaften
einzeln übernommen werden und zum Schluß die alte Grafik gelöscht werden.
(Man kann auch zuerst die alten Einstellungen merken, dann die alte Grafik
löschen, schließlich die neue Grafik einfügen und dieser dann die gemerkten
Einstellungen anpappen.)

Gruß
Bernhard Sander
Udo Riesmeier
2009-06-09 11:49:29 UTC
Permalink
Hi,

die AddPicture Funktion gibt dir ja ein Objekt zurück.

Beispiel:
Set objInlineShapes =
LocalObject.Selection.InlineShapes.AddPicture(DateiName, False, True)

Nun kann man Hoehe und breite zuweisen, hier wird die hoehe/Breite in
Centimeter angegeben:
If Hoehe <> 0 Then
objInlineShapes.Height = LocalObject.CentimetersToPoints(Hoehe)
End If
If Breite <> 0 Then
objInlineShapes.Width = LocalObject.CentimetersToPoints(Breite)
End If



Gruß

Udo
Post by T. Kuechler
Hallo.
Ich möchte per Makro in der Kopfzeile eine Grafik auswählen und diese dann
gegen eine andere Grafik austauschen.
Mit
ActiveDocument.Sections(1).Headers(wdHeaderFooterPrimary).Shapes.SelectAll
Selection.InlineShapes.AddPicture
schaffe ich es zumindest die alte Grafik gegen eine neue auszutauschen.
Die Probeleme sind, dass die neue Grafik viel größer ist und sie immer
linksbündig eingefügt wird.
Ich habe bisher noch nicht herausgefunden, wie ich die Höhe und Breit der
Grafik verändern oder wie ich die Grafik an eine bestimmte Stelle setzten
kann. Der Makrorekorder zeichnet entweder nichts auf oder die Funktionen kann
ich währende der Aufnahme nicht auswählen.
Ich benutze Word 2007.
Kann mir da jemand helfen.
Danke.
Mit freundlichen Grüßen
T. Kuechler
Loading...