Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1652to1656
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

Bilder aus externer Quelle anzeigen nicht einfügen

Bilder aus externer Quelle anzeigen nicht einfügen
28.10.2018 16:17:31
GünterF
Hallo,
Ich habe eine Excel-Datei mit vielen Grafiken. Nun möchte ich die Grafiken "auslagern", damit die Excel-Datei nicht zu groß wird.
Dazu habe ich ein kleines Makro gebastelt, mit dem ich die Bilder aus der externen Quelle einfüge (pictures.insert).
Nachteil ist, dass ich jedesmal, wenn ich das Makro starte, die Grafik eingefügt wird und somit x-mal im Excel-Dokument enthalten ist.
Ich kann natürlich beim Schließen der Excel-Datei die Grafiken wieder entfernen, aber es muss doch noch eine elegantere Lösung geben.
Anbei der Quellcode zum Einfügen
##########
Dim sPicture1 As String, pic1 As Picture
strpfad = ThisWorkbook.Path
Set pic1 = Worksheets("Tabelle1").Pictures.Insert(strpfad & "\bild1.jpg")
With pic1
.ShapeRange.LockAspectRatio = msoFalse
.Height = Range("a3:d14").Height
.Width = Range("a3:d14").Width
.Top = Range("a3:d14").Top
.Left = Range("a3:d14").Left
.Placement = xlMoveAndSize
End With
Set pic1 = Nothing
##########
und der Quellcode zum Entfernen
##########
Worksheets("Tabelle1").Shapes.SelectAll
Selection.Delete
##########
Viele Grüße
Günter

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Bilder aus externer Quelle anzeigen nicht einfügen
28.10.2018 16:30:36
Matthias
Hallo
eleganter ist ohne .SelectAll
also einfach nur:
Worksheets("Tabelle1").Shapes.Delete

was also soll eleganter sein als sie wieder zu löschen
evtl. Datei schließen ohne Speichen? Nee.
Worksheets("Tabelle1").Shapes.Delete ist schon ok so.
Gruß Matthias
Benutze ein Bildsteuerelement...
29.10.2018 08:59:40
Beverly
Hi Günter,
...dann kannst du das Bild dort mit folgendem Code einfügen:
ActiveSheet.Image1.Picture = LoadPicture(strPfad & "\bild1.jpg")

und mit folgendem Code wieder löschen (falls keins mehr angezeigt werden soll):
ActiveSheet.Image1.Picture = LoadPicture("")


Anzeige

302 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige