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

Forumthread: Bilder in Excel einfügen - Stapelverarbeitung?

Bilder in Excel einfügen - Stapelverarbeitung?
07.08.2005 19:10:17
Alpers
Hallo,
ich habe folgendes Problem:
Ich möchte ca. 700 Bilder (jpegs mit ca. je 100 kb Größe) in eine Excel-Tabelle einfügen und diese mit den Dateinamen versehen.
Gibt es eine Möglichkeit, dass ich mir die Arbeit erspare und jede Grafik einzeln einfügen und den entsprechenden Dateinamen runtersetzen muss? Ich kenne so etwas von der Stapelverarbeitung bei Grafikprogrammen.
Bin für jeden ausführlichen Tipp dankbar. Leider sind meine Kenntnisse in Excel sehr beschränkt.
Beste Grüße
Sascha
Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: Bilder in Excel einfügen - Stapelverarbeitung?
07.08.2005 19:31:59
Josef
Hallo Sascha!
Du schreibst nicht wie und wo die Bilder eingefügt werden sollen!
Probier mal das!
Option Explicit

Sub BilderEinfuegen()
    'by J.Ehrensberger
    
    Dim fSearch As FileSearch
    Dim strPath As String
    Dim iCnt As Integer
    Dim pic As Picture
    
    On Error GoTo ERRORHANDLER
    Application.ScreenUpdating = False
    
    ' "alte" Bilder löschen
    ActiveSheet.Pictures.Delete
    
    'Pfad anpassen
    strPath = "C:\Dokumente und Einstellungen\Admin\Eigene Dateien\Eigene Bilder\" ' <-- Pfad zu den Bildern!
    
    Set fSearch = Application.FileSearch
    
    With fSearch
        .NewSearch
        .LookIn = strPath
        .SearchSubFolders = False '<<<<Unterordner durchsuchen True/False
        .FileType = msoFileTypeAllFiles
        .Filename = "*.jpg" '<<<<Dateiendung
        .Execute
        
        If .Execute() > 0 Then
            
            'gefundene Dateien durchlaufen
            For iCnt = 1 To .FoundFiles.Count
                'Bild einfügen
                Set pic = ActiveSheet.Pictures.Insert(.FoundFiles(iCnt))
                'Größe anpassen und ausrichten
                With pic.ShapeRange
                    .LockAspectRatio = msoTrue
                    .Left = Cells(iCnt, 1).Left
                    .Height = Cells(iCnt, 1).Height
                    .Top = Cells(iCnt, 1).Top
                End With
                Cells(iCnt, 2) = .FoundFiles(iCnt)
                Set pic = Nothing
                
            Next
            
        End If
        
    End With
    
    Set fSearch = Nothing
    
    ERRORHANDLER:
    Application.ScreenUpdating = True
End Sub





Gruß Sepp
P.S.: Rückmeldung nicht vergessen!


Anzeige
AW: Bilder in Excel einfügen - Stapelverarbeitung?
08.08.2005 07:25:36
Alpers
Hallo Sepp,
vielen Dank für Deine schnelle Antwort.
Ich habe das Makro eingefügt und die Änderungen vorgenommen. Leider tut sich bei mir gar nichts.
Vielleicht noch einmal ein paar Details zur Sache selbst:
Ich habe ca. 700 Bilder mit gleichem Format, die in eine Excel-Tabelle eingefügt werden sollen. Am besten, sofern möglich, sollte jedes Bild in eine Zelle eingefügt werden und in der Zeile drunter sollte direkt der jeweilige Dateiname stehen.
Die Bilder sind in einem Hauptordner mit verschiedenen Unterordnern abgelegt.
Kannst Du mir noch einmal helfen? Danke!
Beste Grüße
Sascha
Anzeige
AW: Bilder in Excel einfügen - Stapelverarbeitung?
08.08.2005 20:22:15
Josef
Hallo Sascha!
Wenn du den Pfad zu deinem Bilderordner richtig angibst, dann sollte das funzen!
Sub BilderEinfuegen()
    'by J.Ehrensberger
    
    Dim fSearch As FileSearch
    Dim strPath As String
    Dim iCnt As Long
    Dim lRow As Long
    Dim pic As Picture
    Dim picHeight As Single
    
    On Error GoTo ERRORHANDLER
    Application.ScreenUpdating = False
    
    ' "alte" Bilder löschen
    ActiveSheet.Pictures.Delete
    
    ' "alte" Bildnamen löschen
    Range("A:A").ClearContents
    
    ' Bildhöhe <<<--- Gewünschte Höhe der Bilder - Anpassen!!!
    picHeight = 45
    
    ' Startzeile <<<--- Anpassen!!!
    lRow = 1
    
    ' Pfad <<<--- Anpassen
    strPath = "C:\Dokumente und Einstellungen\Admin\Eigene Dateien\Eigene Bilder\" ' <-- Pfad zu den Bildern!
    
    Set fSearch = Application.FileSearch
    
    With fSearch
        .NewSearch
        .LookIn = strPath
        .SearchSubFolders = True '<<<<Unterordner durchsuchen True/False - Anpassen!!!
        .FileType = msoFileTypeAllFiles
        .Filename = "*.jpg" '<<<<Dateiendung !!!
        
        
        If .Execute() > 0 Then
            
            'gefundene Dateien durchlaufen
            For iCnt = 1 To .FoundFiles.Count
                'Bild einfügen
                Set pic = ActiveSheet.Pictures.Insert(.FoundFiles(iCnt))
                'Größe anpassen und ausrichten
                With pic.ShapeRange
                    .LockAspectRatio = msoTrue
                    .Height = picHeight
                    .Left = Cells(lRow, 1).Left
                    .Top = Cells(lRow, 1).Top
                End With
                
                Cells(lRow, 1).RowHeight = picHeight
                
                ' Bildname mit Pfad
                Cells(lRow + 1, 1) = .FoundFiles(iCnt)
                ' oder nur Bildname
                'Cells(lRow + 1, 1) = Right(.FoundFiles(iCnt), InStr(1, StrReverse(.FoundFiles(iCnt)), "\") - 1)
                
                lRow = lRow + 2
                
                Set pic = Nothing
                
            Next
            
        End If
        
    End With
    
    Set fSearch = Nothing
    
    ERRORHANDLER:
    Application.ScreenUpdating = True
End Sub





Gruß Sepp
P.S.: Rückmeldung nicht vergessen!


Anzeige
AW: Bilder in Excel einfügen - Stapelverarbeitung?
08.08.2005 23:40:45
Alpers
Hallo Sepp,
das hat mir wirklich den Tag gerettet. Es klappt fantastisch.
Ich sah mich schon dabei, 700 Bilder einzeln einfügen.
Nochmals vielen Dank! Die Hilfe fand ich hier wirklich prima.
Sascha
;

Forumthreads zu verwandten Themen

Anzeige
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 mit Stapelverarbeitung


Schritt-für-Schritt-Anleitung

Um mehrere Bilder in Excel einzufügen und die Dateinamen automatisch zuzuordnen, kannst Du ein VBA-Makro verwenden. Hier ist eine Schritt-für-Schritt-Anleitung:

  1. Excel öffnen: Starte Excel und öffne die Arbeitsmappe, in die Du die Bilder einfügen möchtest.

  2. Entwicklertools aktivieren: Wenn die Entwicklertools nicht sichtbar sind, gehe zu Datei -> Optionen -> Menüband anpassen und aktiviere die Entwicklertools.

  3. VBA-Editor öffnen: Klicke auf Entwicklertools -> Visual Basic.

  4. Modul einfügen: Im VBA-Editor, klicke mit der rechten Maustaste auf VBAProject (DeineDatei), wähle Einfügen -> Modul.

  5. Makro eingeben: Kopiere und füge den folgenden Code in das Modul ein:

    Sub BilderEinfuegen()
       Dim fSearch As FileSearch
       Dim strPath As String
       Dim iCnt As Long
       Dim lRow As Long
       Dim pic As Picture
       Dim picHeight As Single
    
       On Error GoTo ERRORHANDLER
       Application.ScreenUpdating = False
    
       ActiveSheet.Pictures.Delete
       Range("A:A").ClearContents
    
       picHeight = 45 ' Bildhöhe anpassen
       lRow = 1 ' Startzeile anpassen
       strPath = "C:\Dein\Pfad\zu\Bildern\" ' Pfad zu den Bildern anpassen
    
       Set fSearch = Application.FileSearch
       With fSearch
           .NewSearch
           .LookIn = strPath
           .SearchSubFolders = True
           .FileType = msoFileTypeAllFiles
           .Filename = "*.jpg"
           .Execute
    
           If .Execute() > 0 Then
               For iCnt = 1 To .FoundFiles.Count
                   Set pic = ActiveSheet.Pictures.Insert(.FoundFiles(iCnt))
                   With pic.ShapeRange
                       .LockAspectRatio = msoTrue
                       .Height = picHeight
                       .Left = Cells(lRow, 1).Left
                       .Top = Cells(lRow, 1).Top
                   End With
                   Cells(lRow + 1, 1) = .FoundFiles(iCnt) ' Dateiname einfügen
                   lRow = lRow + 2
                   Set pic = Nothing
               Next
           End If
       End With
    
    ERRORHANDLER:
       Application.ScreenUpdating = True
    End Sub
  6. Makro ausführen: Schließe den VBA-Editor, gehe zurück zu Excel, und führe das Makro über Entwicklertools -> Makros aus.


Häufige Fehler und Lösungen

  • Fehler: "Fehler beim Ausführen des Makros"
    Lösung: Überprüfe den angegebenen Pfad zu den Bildern. Stelle sicher, dass die Dateiendung korrekt ist (z.B. *.jpg).

  • Fehler: Bilder werden nicht angezeigt
    Lösung: Stelle sicher, dass die Bilder im angegebenen Verzeichnis vorhanden sind und dass Du die richtige Excel-Version verwendest (empfohlen: Excel 2010 oder neuer).


Alternative Methoden

Eine weitere Methode, um Bilder in Excel einzufügen, besteht darin, die Funktion "Bilder einfügen" direkt in Excel zu verwenden. Gehe dazu auf Einfügen -> Bilder, um Bilder manuell auszuwählen. Diese Methode ist jedoch nicht für große Mengen an Bildern geeignet.

Für die Stapelverarbeitung von Bildern gibt es auch spezialisierte Software, die Dir helfen kann, Bilder in Excel-Tabellen einzufügen.


Praktische Beispiele

Wenn Du beispielsweise 700 Bilder in Excel einfügen möchtest und diese in einer einzigen Zelle anzeigen möchtest, kannst Du die =HYPERLINK-Formel verwenden, um den Dateipfad zu verlinken.

=HYPERLINK("C:\Dein\Pfad\zu\Bildern\Bild1.jpg", "Bild 1")

Diese Methode ermöglicht es, Bilder durch Klicken auf den Link anzuzeigen, ohne sie direkt in die Zelle einzufügen.


Tipps für Profis

  • Bilder in Zellen einfügen: Um Bilder in Zellen einzufügen, kannst Du die Zellenformatierung anpassen und die Größe der Bilder entsprechend einstellen. Dies macht die Tabelle übersichtlicher.

  • Verwendung von Unterordnern: Wenn Deine Bilder in Unterordnern gespeichert sind, stelle sicher, dass die Option SearchSubFolders im Makro auf True gesetzt ist.

  • Optimierung der Bildgröße: Achte darauf, die Bildhöhe im Makro anzupassen, um sicherzustellen, dass die Bilder in die Zellen passen.


FAQ: Häufige Fragen

1. Wie kann ich mehrere Bilder in einer Zelle einfügen?
Du kannst Bilder nicht direkt in eine Zelle einfügen, aber Du kannst die Größe der Bilder anpassen und sie über die Zelle legen. Alternativ kannst Du HYPERLINK verwenden, um auf Bilder zu verlinken.

2. Welche Dateiendungen kann ich verwenden?
Du kannst verschiedene Bildformate wie JPG, PNG oder GIF verwenden. Achte darauf, die Dateiendung im Makro entsprechend anzupassen.

3. Funktioniert dieses Verfahren in allen Excel-Versionen?
Das vorgestellte VBA-Makro ist für Excel 2010 und neuere Versionen geeignet. Ältere Versionen unterstützen möglicherweise nicht alle Funktionen.

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