Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Fotos in Excel-Tabell einfügen

Forumthread: Fotos in Excel-Tabell einfügen

Fotos in Excel-Tabell einfügen
10.08.2015 15:47:46
hbluhm
Hallo zusammen,
ich bin neu im Forum und habe mit Makros o.ä. bisher noch nicht gearbeitet.
Ich muss in einer Excel-Tabelle "Miniaturansichten" von ca. 1500 Fotos einfügen. Per Hand mit Einfügen/Grafik sitze ich da ewig.
Der Name des Fotos ohne ".jpg" steht in Spalte A (Beispiel: R0001), das Fotoverzeichnis ist zur Zeit F:\Fotodokumentation\. Die Fotos sollen in Spalte J eingefügt werden. Die Fotos sollen möglichst gleich an die Zellengröße angepasst werden.
- Excel-Version 2007
- 1. Zeile mit Daten ist Zeile 10 (1-9: Text, Tabellenkopf)
- Höhe der Zeilen: 45 (60 Pixel)
Kann mir jemand hierbei helfen?
Gruß und vielen Dank

Anzeige

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Fotos in Excel-Tabelle einfügen
10.08.2015 16:29:32
Rudi
Hallo,
teste mal.
Sub Bilder_rein()
Dim oIMG As Object, sIMG As String
Dim rngC As Range
Const strPfad As String = "f:\fotodokumentation\"
Application.ScreenUpdating = False
For Each rngC In Range(Cells(10, 1), Cells(Rows.Count, 1).End(xlUp))
sIMG = Dir(strPfad & rngC)
If sIMG  "" Then
Set oIMG = ActiveSheet.Pictures.Insert(strPfad & sIMG)
With oIMG
.ShapeRange.LockAspectRatio = False
.Top = rngC.Top
.Left = rngC.Offset(, 9).Left
.Height = rngC.Height
.Width = rngC.Offset(, 9).Width
End With
Set oIMG = Nothing
End If
Next rngC
End Sub

Gruß
Rudi

Anzeige
AW: Fotos in Excel-Tabelle einfügen
10.08.2015 18:31:20
hbluhm
Hallo Rudi,
erst mal Danke für die schnelle Antwort.
Wenn ich das Makro ausführe passiert gar nichts. Kann ich irgendwie sehen, ob die Befehle richtig abgearbeitet werden?
Gruß

kleine Nachlässigkeit
11.08.2015 01:17:50
Michael
Hi zusammen,
Du hast geschrieben: Der Name des Fotos ohne ".jpg"
Entsprechend mußt Du das in der Zeile
sIMG = Dir(strPfad & rngC)

ergänzen:
sIMG = Dir(strPfad & rngC & ".jpg")
Das sollte es gewesen sein.
Um solche Sachen selbst zu finden, kann ich Dir nur empfehlen, den Code mal mit F8 zeilenweise anzusehen: wenn Du dann in der entsprechenden Zeile angekommen bist (bzw. eine Zeile weiter, damit denn die Zuweisung bereits erfolgt ist), siehst Du den jeweiligen Dateinamen, wenn Du den Mauszeiger über die Variable sIMG ziehst.
Oder Du schaltest (unter Ansicht) das Direktfenster ein, in dem dann die Ausgabe der Variable mit
debug.print sIMG

erfolgt.
Happy Exceling,
Michael

Anzeige
AW: kleine Nachlässigkeit
11.08.2015 14:46:08
hbluhm
Hallo,
war wirklich nur die fehlende Dateiendung. Den Tipp mit F8 habe ich ausprobiert! Also wirklich mal nähere Beschäftigung mit Excel/ VB.
Vielen Dank nochmal und Gruß von der Ostseeküste!

gerne,
11.08.2015 19:48:32
Michael
hbluhm,
Du hast's gut, bei Dir isses nicht so heiß wie in Nbg.!
Was gäbe ich für ne ßteife Brise...
Gruß,
M.
Anzeige
;
Anzeige
Anzeige

Infobox / Tutorial

Fotos in Excel-Tabellen einfügen


Schritt-für-Schritt-Anleitung

Um Fotos in eine Excel-Tabelle einzufügen, kannst du ein VBA-Makro verwenden. Folge diesen Schritten:

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

  2. Wähle Einfügen > Modul, um ein neues Modul zu erstellen.

  3. Füge den folgenden Code ein:

    Sub Bilder_rein()
        Dim oIMG As Object, sIMG As String
        Dim rngC As Range
        Const strPfad As String = "f:\fotodokumentation\"
        Application.ScreenUpdating = False
        For Each rngC In Range(Cells(10, 1), Cells(Rows.Count, 1).End(xlUp))
            sIMG = Dir(strPfad & rngC & ".jpg")
            If sIMG <> "" Then
                Set oIMG = ActiveSheet.Pictures.Insert(strPfad & sIMG)
                With oIMG
                    .ShapeRange.LockAspectRatio = False
                    .Top = rngC.Top
                    .Left = rngC.Offset(, 9).Left
                    .Height = rngC.Height
                    .Width = rngC.Offset(, 9).Width
                End With
                Set oIMG = Nothing
            End If
        Next rngC
    End Sub
  4. Schließe den VBA-Editor und kehre zu Excel zurück.

  5. Führe das Makro über Entwicklertools > Makros aus und wähle Bilder_rein.

Stelle sicher, dass der Pfad zu deinem Fotoverzeichnis korrekt ist.


Häufige Fehler und Lösungen

  • Fehler: „Nichts passiert“ beim Ausführen des Makros

    • Lösung: Überprüfe, ob die Dateiendung ".jpg" korrekt im Code ergänzt wurde. Der Code sollte so aussehen:
    sIMG = Dir(strPfad & rngC & ".jpg")
  • Fehler: Bilder sind nicht korrekt formatiert

    • Lösung: Stelle sicher, dass die Zellengröße in Excel den Bildern entspricht. Du kannst die Höhe und Breite der Zellen anpassen, bevor du das Makro ausführst.

Alternative Methoden

Falls du mit VBA nicht vertraut bist, kannst du auch die Funktion „Einfügen > Bilder“ in Excel verwenden, um Fotos manuell einzufügen. Dies ist jedoch zeitaufwändiger, insbesondere bei einer großen Anzahl von Bildern.

Ein Beispiel für eine fotodokumentation erstellen excel ohne Makros wäre die Verwendung von Hyperlinks zu den Bildern, die in einer separaten Datei oder einem Ordner gespeichert sind.


Praktische Beispiele

Ein häufiges Beispiel für eine fotodokumentation beispiel könnte eine Inventarliste sein, in der Bilder von Produkten neben den entsprechenden Bezeichnungen eingefügt werden. Mit dem oben genannten Makro kannst du diese Aufgabe automatisieren und viel Zeit sparen.


Tipps für Profis

  • Nutze das Direktfenster im VBA-Editor, um Variablen wie sIMG zu überwachen. Dies hilft, Fehler schneller zu identifizieren.
  • Experimentiere mit der fotodokumentation excel vorlage kostenlos, um unterschiedliche Layouts und Designs für deine Dokumentation zu testen.
  • Überlege, die Größe der Bilder vor dem Einfügen zu optimieren, um die Dateigröße der Excel-Datei gering zu halten.

FAQ: Häufige Fragen

1. Frage: Wie kann ich die Bilder in einer anderen Zeile einfügen?
Antwort: Ändere die Zeile in der For Each-Schleife, um die gewünschte Startzeile zu verwenden.

2. Frage: Kann ich das Makro für andere Dateiformate anpassen?
Antwort: Ja, ändere einfach die Dateiendung in der Zeile sIMG = Dir(strPfad & rngC & ".jpg"), um andere Bildformate wie .png oder .gif zu verwenden.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige