Einfügen einer Grafik in mehrere Arbeitsblätter (Microsoft Excel)
Marty hat eine Reihe von Arbeitsmappen, einige mit bis zu 50 Arbeitsblättern. Er muss eine Grafik (ein Firmenlogo) an derselben Stelle in jedem Arbeitsblatt einfügen. Er versuchte dies, indem er alle Arbeitsblätter auswählte und dann einfügte, aber das schien bei mehreren Arbeitsblättern nicht so zu funktionieren wie bei der regulären Bearbeitung.
Marty hat recht; Der Versuch, eine Grafik einzufügen, wenn Sie mehrere Arbeitsblätter ausgewählt haben, funktioniert nicht. Wenn Sie es versuchen, sagt Excel Ihnen, dass das Einfügen nicht möglich ist. Wenn Sie dann jedoch nur ein einziges Arbeitsblatt auswählen, können Sie es ganz gut einfügen.
Stattdessen müssen Sie ein Makro verwenden, um das Einfügen durchzuführen. Angenommen, die Grafik wurde bereits in die Zwischenablage kopiert, können Sie ein Makro wie das folgende ausführen:
Sub InsertLogo1() Dim shtSheet As Worksheet Application.ScreenUpdating = False For Each shtSheet In Worksheets With shtSheet .Activate .Range("A1").Select .Paste End With Next Set shtSheet = Nothing Application.ScreenUpdating = True End Sub
Das Makro durchläuft jedes Arbeitsblatt in der Arbeitsmappe und fügt die Grafik in Zelle A1 ein. Wenn Sie eine andere Zelle verwenden möchten, müssen Sie lediglich die Zeile ändern, in der die Zelle ausgewählt wird.
Wenn Sie die Grafik nicht vorab in die Zwischenablage kopieren möchten, können Sie die Grafik mit einem Makro wie dem folgenden direkt aus einer Bilddatei einfügen:
Sub InsertLogo2() Dim strPath As String Dim shtSheet As Worksheet strPath = "C:\GraphicFolder\PictureName.bmp" For Each shtSheet In Worksheets shtSheet.Activate Range("A1").Select ActiveSheet.Pictures.Insert (strPath) Next shtSheet Set shtSheet = Nothing End Sub
Sie können natürlich den Pfad zur Grafikdatei und die Zelle ändern, in der die Datei in die Arbeitsblätter eingefügt wird. Falls gewünscht, können Sie die folgende Variante verwenden, die ein Standard-Windows-Dialogfeld anzeigt, um die Grafik auszuwählen, die Sie einfügen möchten:
Sub InsertLogo3() Dim strPath As Variant Dim shtSheet As Worksheet Dim sTemp As String ' Set the file type sTemp = "Graphics Files (.jpg; .bmp; .gif; .tif; *.png)" sTemp = sTemp & ", .jpg; .bmp; .gif; .tif; *.png" strPath = Application.GetOpenFilename(sTemp) If strPath <> False Then For Each shtSheet In Worksheets shtSheet.Activate Range("A1").Select ActiveSheet.Pictures.Insert (strPath) Next shtSheet Set shtSheet = Nothing End If End Sub
_Hinweis: _
Wenn Sie wissen möchten, wie die auf dieser Seite (oder auf einer anderen Seite der ExcelTips-Websites) beschriebenen Makros verwendet werden, habe ich eine spezielle Seite vorbereitet, die hilfreiche Informationen enthält.
ExcelTips ist Ihre Quelle für kostengünstige Microsoft Excel-Schulungen.
Dieser Tipp (9205) gilt für Microsoft Excel 2007, 2010, 2013, 2016, 2019 und Excel in Office 365. Eine Version dieses Tippes für die ältere Menüoberfläche von Excel finden Sie hier: