Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1404to1408
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Grafik per VBA austauschen?

Grafik per VBA austauschen?
23.01.2015 11:04:13
Selma
Hallo Leute,
ich habe in vielen der Arbeitsblätter der Datei ein Firmenlogo eingefügt und diesen ein Name "Logo" gegeben. Gibt es die Möglichkeit über VBA in allen Arbeitsblättern der Datei das Shape "Logo" durch das Logo "D:\Daten\Logo_45x13mm.jpg" (liegt lokal) auszutauschen?
Der Name "Logo" soll nachdem Austausch beibehalten werden.
Besten Dank im Voraus!
Gruß Selma

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Grafik per VBA austauschen?
23.01.2015 11:41:43
Selma
Ich habe in zwischen ein Makro (mit Logoabmessungen und Positionierung)im Internet gefunden.
Kann ich im Code die Abmessungen und die Positionierung weglassen? Neu eingefügtes Logo hat schon die richtige Abmessungen und die Position soll von dem vorherigen Logo übernommen werden.
Sub Logo_aendern()
Const PICTURE_PATH = "D:\Daten\Logo_neu.jpg"
Const PICTURE_OLD_NAME = "Logo"
Const PICTURE_NEW_NAME = "Logo"
Const PICTURE_HEIGHT = 50
Const PICTURE_WIDTH = 171
Const PADDING_LEFT = 6
Const PADDING_TOP = 8
Dim objShape As Shape
Dim objWorksheet As Worksheet
For Each objWorksheet In ThisWorkbook.Worksheets
With objWorksheet
For Each objShape In .Shapes
If objShape.Name = PICTURE_OLD_NAME Then
objShape.Delete
Exit For
End If
Next
Set objShape = .Shapes.AddPicture(Filename:=PICTURE_PATH, _
LinkToFile:=msoFalse, SaveWithDocument:=msoTrue, _
Left:=.Cells(3, 8).Left + PADDING_LEFT, Top:=.Cells(3, 8).Top - PADDING_TOP, _
Width:=PICTURE_WIDTH, Height:=PICTURE_HEIGHT)
objShape.Name = PICTURE_NEW_NAME
End With
Next
Set objShape = Nothing
End Sub

Anzeige
AW: Grafik per VBA austauschen?
23.01.2015 15:44:34
Beverly
Hi Selma,
versuche es mal so (ungetestet):
            Set objShape = .Shapes.AddPicture(Filename:=PICTURE_PATH, _
LinkToFile:=msoFalse, SaveWithDocument:=msoTrue)


AW: Grafik per VBA austauschen?
29.01.2015 16:05:29
Selma
Hallo Karin,
es funktioniert auch nicht.
Argument ist nicht optional!
Gruß,
Selma

AW: Grafik per VBA austauschen?
29.01.2015 16:26:00
Beverly
Hi Selma,
versuche es mal so:
Sub BildErsetzen()
Dim picBild As Picture
Dim objWorksheet As Worksheet
For Each objWorksheet In ThisWorkbook.Worksheets
With objWorksheet
For Each picBild In .Pictures
If picBild.Name = "Logo" Then
picBild.Delete
Exit For
End If
Next
Set picBild = .Pictures.Insert("D:\Daten\Logo_neu.jpg")
picBild.Name = "Logo"
End With
Next
Set picBild = Nothing
End Sub

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige