Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Bild einfügen nicht als Verknüpfung

Bild einfügen nicht als Verknüpfung
27.01.2018 13:43:02
Thomas
Hallo zusammen,
habe eine Liste und möchte zu dieser Liste Bilder in einer Tabellenspalte einfügen, die dann spä _ ter mit der Datei gespeichert werden sollen. Hatte dazu dieses kleine Makro gefunden, dass genau das machte was ich wollte. Einziger Haken war, dass die Bilder als Verknüpfung eingefügt werden und nicht mit der Datei gespeichert werden.

Sub Bildereinfügen()
enda = Worksheets("Tabelle1").Range("C65536").End(xlUp).Row
For i = 2 To enda
Range("C" & i).Select
filmname = ActiveCell.Value
Range("D" & i).Select
ActiveSheet.Pictures.Insert("C:\Pictures\" & filmname & ".png").Select
On Error Resume Next
Next i
End Sub

Ich habe irgendwo gelesen, dass mit Strg + A und dann Strg + Shift + F9, die Verknüpfungen
durch die Bilder ersetzt werden. Hat aber nicht funktioniert und ich habe in Excel auch  _
nirgends eine Möglichkeit gefunden, dass einzustellen.
Jetzt habe ich in diversen Foren gefunden, dass die Funktion Pictures.Insert seit Excel 2010  _
immer nur Verknüpfungen einfügt. Um die Bilder direkt einzufügen müsste man folgendes Makro mit  _
_
Shapes.AddPicture verwenden

Sub Bilder_einfügen()
Dim targetRange As Range
Dim pictureShape As Shape
Set targetRange = Range("E2")
Set pictureShape = ActiveSheet.Shapes.AddPicture_
("C:\Pictures\"& filname &".png", False, True, 0, 0, -1, -1)
End Sub

Hier habe ich jetzt das Problem, dass mir nicht klar ist, wie ich das Ganze in eine Schleife  _
bekomme und regeln kann, dass mein Bild in einer bestimmten Zelle abgelegt wird. Konkret habe   _
_
ich eine Zeile mit 3 beschrifteten Spalten, wobei in der dritten Spalte der Name des Bildes  _
steht. In der 4. Spalte soll dann das Bild landen.
Wie kann ich mein erstes Makro mit dem zweiten so kombinieren, dass die Bilder direkt eingefügt  _
_
_
werden und nicht nur verknüpft werden.
Vielen Dank für die Hilfe von einem VBA-Neuling, was man sicherlich bei dieser Anfrage merkt.
Viele Grüße
Thomas


		
Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: Bild einfügen nicht als Verknüpfung
27.01.2018 14:27:42
Sepp
Hallo Thomas,
probier mal.
Sub Bildereinfügen()
Dim lngLast As Long, lngRow As Long, strFile As String

With Worksheets("Tabelle1")
  lngLast = .Range("C65536").End(xlUp).Row
  For lngRow = 2 To lngLast
    strFile = "C:\Pictures\" & .Cells(lngRow, 3) & ".png"
    If Dir(strFile, vbNormal) <> "" Then
      Call .Shapes.AddPicture(Filename:=strFile, LinkToFile:=msoFalse, _
        SaveWithDocument:=msoTrue, Left:=.Cells(lngRow, 4).Left, _
        Top:=.Cells(lngRow, 4).Top, Width:=-1, Height:=-1)
    End If
  Next
End With
End Sub

Gruß Sepp

Anzeige
AW: Bild einfügen nicht als Verknüpfung
29.01.2018 17:16:09
Thomas
Hallo Sepp,
vielen Dank. Hat funktioniert. Da brauche ich noch eine Weile, bis ich kapiert habe, wie sowas umzusetzen ist.
Viele Grüße
Thomas
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

Bilder in Excel einfügen ohne Verknüpfung


Schritt-für-Schritt-Anleitung

Um Bilder in Excel einzufügen und sicherzustellen, dass sie nicht als Verknüpfung gespeichert werden, kannst du ein VBA-Makro verwenden. Hier ist eine Schritt-für-Schritt-Anleitung:

  1. Öffne Excel und drücke ALT + F11, um den VBA-Editor zu öffnen.

  2. Klicke im Menü auf Einfügen > Modul, um ein neues Modul zu erstellen.

  3. Kopiere den folgenden VBA-Code und füge ihn in das Modul ein:

    Sub Bilder_einfügen()
        Dim lngLast As Long, lngRow As Long
        Dim strFile As String
    
        With Worksheets("Tabelle1")
            lngLast = .Range("C65536").End(xlUp).Row
            For lngRow = 2 To lngLast
                strFile = "C:\Pictures\" & .Cells(lngRow, 3) & ".png"
                If Dir(strFile, vbNormal) <> "" Then
                    .Shapes.AddPicture Filename:=strFile, LinkToFile:=msoFalse, _
                    SaveWithDocument:=msoTrue, Left:=.Cells(lngRow, 4).Left, _
                    Top:=.Cells(lngRow, 4).Top, Width:=-1, Height:=-1
                End If
            Next
        End With
    End Sub
  4. Schließe den VBA-Editor und gehe zurück zu Excel.

  5. Führe das Makro aus, indem du ALT + F8 drückst und das Makro Bilder_einfügen auswählst.

Die Bilder werden jetzt direkt in die Zellen eingefügt, ohne dass sie als Verknüpfung gespeichert werden.


Häufige Fehler und Lösungen

  • Excel Bild einfügen geht nicht: Stelle sicher, dass der Dateipfad korrekt ist und die Bilder im angegebenen Ordner vorhanden sind.
  • Bilder in Excel einfügen funktioniert nicht: Überprüfe, ob das Makro korrekt ausgeführt wird und keine Fehler im Code vorhanden sind.
  • Bild in Excel einfügen geht nicht: Vergewissere dich, dass die Excel-Version VBA unterstützt (ab Excel 2010 sollte es funktionieren).

Alternative Methoden

Wenn du keine VBA-Programmierung nutzen möchtest, kannst du Bilder manuell einfügen:

  1. Gehe zu Einfügen > Bilder.
  2. Wähle das gewünschte Bild aus und füge es ein.
  3. Du kannst das Bild dann mit der Maus in die gewünschte Zelle ziehen.

Diese Methode ist jedoch nicht ideal, wenn du viele Bilder hast.


Praktische Beispiele

Angenommen, du hast eine Excel-Tabelle mit den Spalten "Filmname" in Spalte C und möchtest die entsprechenden Bilder in Spalte D einfügen:

  1. Fülle die Spalte C mit den Namen der Filme.
  2. Führe das oben beschriebene Makro aus.
  3. Die Bilder werden automatisch in die entsprechenden Zellen in Spalte D eingefügt.

Tipps für Profis

  • Um die Bilder in Excel nicht nur einzufügen, sondern auch in der Zelle zu verankern, kannst du mit den Eigenschaften der Zelle spielen.
  • Nutze Shapes anstelle von Pictures.Insert, um mehr Kontrolle über die Bildgröße und Position zu haben.
  • Experimentiere mit verschiedenen Bildformaten wie JPG, PNG usw., um die besten Ergebnisse zu erzielen.

FAQ: Häufige Fragen

1. Warum werden die Bilder als Verknüpfung eingefügt? Die Funktion Pictures.Insert in Excel fügt standardmäßig Bilder als Verknüpfung ein. Verwende stattdessen Shapes.AddPicture, um die Bilder direkt einzufügen.

2. Wie kann ich sicherstellen, dass die Bilder in einer bestimmten Zelle platziert werden? Im VBA-Code kannst du die Left und Top Eigenschaften der Zelle verwenden, um die Position des Bildes genau festzulegen.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige