.jpg - Bild in Zelle einfügen geschlossen 

Status
Für weitere Antworten geschlossen.

Nobemel

Registered +
Registriert
Sep. 2009
Beiträge
20
Hallo zusammen,

leider habe ich mich mit diesem Thema noch nie beschäftigt, daher wollte ich mal nach Euerem Rat fragen.

Ist es möglich ein auf dem PC hinterlegtes Bild im .jpg - Format in eine Zelle einzufügen? Ich habe da im Hinterkopf, das man da nur Textdateien einfügen kann und das Bild somit mit einem kleinen Macro bearbeiten muss.
Wo wir beim nächsten Problem sind... Macros habe ich noch nie benötigt :)

Falls jemand eine Idee hat, schreibt mir doch mal kurz wie es denn funktionieren könnte!

Besten Dank vorab!
 
Hallo

natürlich kann man auch Grafiken in Excel einfügen. Geht genauso wie in Word.

über >> Einfügen >> Grafik >> aus Datei... >> Grafik auswählen
Danach ggf. die Grafik formatieren und Zellgrösse noch anpassen

Gruss Totsch
 
Vielen Dank Totsch, meine Problematik hat sich allerdings soeben etwas geändert.

Ist es möglich z.B. in ein Schriftfeld eine 6-stellige Artikellnummer zu hinterlegen, welche dann in einem bestimmten Pfad auf ein Bild mit der gleichen Nummer des Artikells zugreift?

Sieht dann so aus, dass ich die Artikellnummer angeben und das Bild dann erscheint.
 
reicht es dir auch aus mit Einfügen >> Hyperlink >> Grafik auswählen, so dass dann in der Zelle z.B. erscheint >> D:\Eigene Dateien\Nobemel\Artikel123.gif

mit Klick auf diesen Link wird dir dann im IE die Grafik angezeigt.

es geht sonst aber auch noch über Formel einzufügen, um das Bild deines Artikels anzuzeigen.
 
Variante 2 mit der Formel wäre mir ganz recht, das Bild sollte direkt in der Tabelle erscheinen und nicht mit einem externen Programm.
 
hier nun 3 Formelvarianten zum anzeigen des Bildes.

d5209ecdeec9756225b07cf16.jpg


wegen kopierfähig wäre es von Vorteil, wenn die Bilder immer im gleichen Ordner liegen würden! Ansonsten musst du den Pfad immer erst anpassen.

Gruss Totsch
 
Alles nette Varianten, vielen Dank. Allerdings suche ich noch ein bisschen nach etwas anderem.

Leider habe ich keine Ahnung ob es überhaupt möglich ist :(

Ich erläutere dir am besten mal meine Vorstellung:

Ich gebe in der Spalte A2 meine Artikelnummer an und automatisch erscheint in Spalte C2 das Bild des Artikels in der Tabelle (Kein Hyperlink). Ich müsste also der ganzen Spalte C sagen, dass jeweils die Artikelnummer in Spalte A an den Pfad angehängt wird und somit auf das Bild zugreift.


Nur schwer möglich, bzw. garnicht, oder? :)

Besten Dank!
 
ich glaube kaum, dass dein Vorhaben mit einem Makro gelingen könnte.
Würde ja theoretisch heissen >> Makro aufzeichnen >> Einfügen >> Grafik >> aus Datei >> Pfad/Ordner wählen >> und nun den Ordner durchsuchen nach nach Bezeichnung von Zelle A2 (111111.jpg) und einfügen >> Makroaufzeichnung beenden.
Das gleiche dann wiederum für Zelle A3 (Spalte A) usw.
Ich glaube kaum, dass das per VBA zu lösen ist. Aber warten wir mal ab, ob sich dazu noch jemand äussert, der mehr von VBA versteht.

Gruss Totsch
 
Und um mal ganz einfach zu starten, kann das Gleiche was du mir gerade eben schon vorgeschlagen hast auch so realisieren, dass ich in der Spalte C das tatsächliche Bild sehe und nicht nur den Link? Klar kann ich das Bild einfach einfügen, aber ich würde das Ganze gerne über einen Link im Hintergrund machen.

D.h. ich gebe ein Pfad blabla Bild 111111.jpg und in der jeweiligen Spalte erscheint das Bild. Sollte ich das hinterlegt Bild also ändern, passt sich das Bild in der Tabelle automatisch an.
 
Also ich kenne auch keine Funktion/Formel, die eine bestimmte Grafik (von der Festplatte!!!) anzeigt/einblendet, wenn eine bestimmte Bedingung erfüllt ist.

wenn die entsprechenden Bilder in einem gesonderten Tabellenblatt bereits vorhanden sind, dann könnte man allerdings mit INDEX und VERGLEICH sowie mit und ohne einem DropDown-Feld die Bilder anzeigen lassen.

warten wir doch erst einmal ab, was die VBA-Profis meinen und ob es überhaupt möglich ist, direkt ein Bild nach entsprechenden Bedingungen von Spalte A und Pfadangabe in Spalte B von der Festplatte einzufügen. Ich glaube aber kaum, dass das möglich sein wird.

Gruss Totsch
 
Zuletzt bearbeitet von einem Moderator:
Alles klar, danke dir trotzdem für deine Zeit und vorallem Geduld ;)

Bin bei Excel leider bei den Standartfunktionen wie wenn-dann, Verweisen usw. stehen geblieben ^^
Alles tiefsinnigere benötige ich im "normalen" Arbeitstag nicht...
 
Also ich würde es über VBA machen... Dann halt nach erstellen der Liste das Makro aufrufen (oder Knopf drücken, je nachdem was du dir auf das Tabellenblatt legst.

Ich bin mir momentan nur noch nicht ganz im Klaren, wie das ging, dass das Bild nur in der einen Zelle ist und nicht zellübergreifen. Müsste ich morgen nochmal schauen, ob/wie das geht. Aber grundsätzlich Bilder einfügen funktioniert über ActiveSheet.Pictures.Insert ...

Dann landet es aber zellübergreifend in Excel. Muss jetzt aber los, morgen versuch ich mich nochmal an einer Lösung.

Würde aber halt auch nur auf Knopfdruck/Makrostart gehen und nicht ständig. Sonst müsstest du eine Zellüberwachung einbauen, wenn Zelle in Spalte "Bildname" verlassen wird, dann binde Bild ein... Aber ob das unbedingt sinnvoll ist?
 
Sorry für Doppelpost, aber ich weiß nicht, ob man sonst merkt, das was neues hier steht. :confused:

Hier mal der Code, wie ich es basteln würde mich meinen bescheidenen Kenntnissen.
Ich hab versucht es sinnvoll auszukommentieren. Sollten noch Fragen sein, werde ich versuchen sie zu beantworten.
Code:
Public Sub Bild_gemaess_Vorgabezeile_einfuegen()

Dim rngZielbildzelle As Range
Dim rngBildnamenzelle As Range
Dim Reihe As Long
Reihe = 5 'Startzeile wo die Artikelnummern beginnen
'erstmaliges Setzen der Ranges
'hier als Beispiel 1 = Spalte A mit Artikelnummer/Bildname und 3 = Spalte C wo das Bild rein kommt
Set rngBildnamenzelle = ActiveSheet.Range(Cells(Reihe, 1), Cells(Reihe, 1))
Set rngZielbildzelle = ActiveSheet.Range(Cells(Reihe, 3), Cells(Reihe, 3))
'Jetzt Zeile für Zeile durchlaufen, bis eine leere Zelle ohne Artikelnummer gefunden wird
Do Until ActiveSheet.Cells(Reihe, 1).Value = ""
'Hier ggfs die Endung des Bildes (jpg, gif etc anpassen)
'und ggs auch noch den Pfad der Bilder anpassen. Hier gehe ich davon aus, die Bilder liegen da, wo auch die Exceldatei liegt
With ActiveSheet.Pictures.Insert(ThisWorkbook.Path & "\" & rngBildnamenzelle.Value & ".png")
.Top = rngZielbildzelle.Top + 1
.Left = rngZielbildzelle.Left + 1
.Height = 199 'hier Bildhöhe anpassen
.Width = 200 'hier Bildbreite anpassen
End With
'hier Zellgröße anpassen
rngZielbildzelle.ColumnWidth = 37.4 'Spaltenbreite (nicht identisch mit Bildbreitenwert!)
rngZielbildzelle.RowHeight = 200 'Zellhöhe würde ich 1 größer machen als Bildhöhe
'Zähler raufsetzen
Reihe = Reihe + 1
'hier den Range neu setzen fürs nächste Bild, Spalten wie oben anpassen
Set rngBildnamenzelle = ActiveSheet.Range(Cells(Reihe, 1), Cells(Reihe, 1))
Set rngZielbildzelle = ActiveSheet.Range(Cells(Reihe, 3), Cells(Reihe, 3))
Loop
'ActiveWorkbook.Save 'ggfs. automatisches speichern der Exceldatei

End Sub
 
Zuletzt bearbeitet von einem Moderator:
Status
Für weitere Antworten geschlossen.
Zurück
Oben Unten