Clever-Excel-Forum

Normale Version: Bilder zu Artikelnummern anzeigen
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo an alle.

Habe ein Probleme mit einem Code, den ich gefunden habe.
Ich möchte diesen später verwenden, wenn er funktioniert um ein passendes Bild zu einer Artikelnummer anzeigen zu lassen.

Also wenn ich in einer Zeile eine Artikelnummer eingebe, soll er mir das passende Artikelbild, das ich in einem passenden Ordner gespeichert habe (als*.jpg) anzeigen.
Artikelnummern passen immer zu dem Artikelbild.

Ich habe einen Code, er funktioniert auch.
Doch wenn ich in der selben Zelle eine andere Artikelnummer eingebe, erscheint auch das passende Bild, legt sich aber über das vorige.
Kann mir jemand sagen wie ich diesen Code ändern muss, damit er immer das passende Bild anzeigt du beim Artikelwechsel auch nur das..also das andere verschwindet danach sofort.

Hier mein Code:

Option Explicit

Private Const PICTURE_PATH = "C:\Neuer Ordner\"
Private Const PICTURE_EXTENSION = ".jpg"

Private Sub Worksheet_Activate()

End Sub

Private Sub Worksheet_Change(ByVal Target As Range)
Dim objShape As Object
If Target.Address = "$A$1" Then
For Each objShape In Shapes
If objShape.TopLeftCell.Address = "$C$1" Then
objShape.Delete
Exit For
End If
Next
If Not IsEmpty(Target.Value) Then
If Dir$(PICTURE_PATH & Target.Value & PICTURE_EXTENSION) = vbNullString Then
MsgBox "Kein Bild zu Materialnummer ''" & Target.Value & _
"'' gefunden.", vbExclamation, "Hinweis"
Else
Set objShape = Me.Pictures.Insert(PICTURE_PATH & _
Target.Value & PICTURE_EXTENSION)
objShape.Top = Cells(1, 3).Top
objShape.Left = Cells(1, 3).Left
End If
End If
Set objShape = Nothing
End If
End Sub


Wäre toll, wenn mir jemand helfen kann, vielleicht hat auch einer von euch einen anderen besseren code? :)

Ich bin kein vba experte. ;)

Ganz kleiner Anfänger. ;)

Gruß Mike
Hi Mike,

mal ein Vorsclag so ganz ohne VBA.

Ich habe vor längerer Zeit eine Werkzeugliste aller Werkzeuge, die in meinem Besitz sind, erstellt und die Stücke auch fotografiert. Danach habe ich in meiner Liste die Bilder (*jpg) in die entsprechenden Zellen als Kommentar eingefügt. So reicht es jetzt, wenn ich mit der Maus über die Zelle fahre - das Bild wird sofort angezeigt.
Hallo Mike,

Der VBA-Code löscht im Excel ein Bild auf der Position der linken oberen Ecke von C1 und fügt anschließend dort ein neues ein.
Wenn Du dort bereits mehr als ein Bild hast, dann bleiben welche übrig. Ist das so?
Wenn Du das eingefügte Bild etwas verschiebst, sodass die linke obere Ecke nicht mehr in C1 ist, bleibt es auch.
Hallo willwissen :)

Ja genau, das Bild zeigt sich genau dort wie du es beschreibst.

Ich möchte aber das das Bild immer wechselt und ein passendes zu einet neuer Artikelnummer anzeigt.....nicht ein Bild nach dem andern übereinander legt.

Bei diesem code ist es so.

Auch möchte ich, das das Bild an einer anderen Stelle angezeigt wird nicht in C1. :(

Lg Mike
(17.11.2014, 00:21)Mike4711 schrieb: [ -> ]Hallo willwissen :)

Ja genau, das Bild zeigt sich genau dort wie du es beschreibst.

Ich möchte aber das das Bild immer wechselt und ein passendes zu einet neuer Artikelnummer anzeigt.....nicht ein Bild nach dem andern übereinander legt.

Bei diesem code ist es so.

Auch möchte ich, das das Bild an einer anderen Stelle angezeigt wird nicht in C1. :(

Lg Mike

Hi Mike,

das Bild soll zusammen mit der Artikelnummer wechseln? Ich nehme an, dass du mit irgendeiner Veweisfunktion dir den Artikel herholst. Dann kommt das Bild im Kommentar doch auch mit.

Leider hast du bislang deine Datei nicht vorgestellt. Deshalb ist es für die Helfer schwierig, dir konkrete Vorschäge zu machen. Lies mal diese beiden Beiträge:

Arbeitsmappen hochladen Klick
Tabellenausschnitte einstellen Klick
Hallo, die Beispieldatei "Nordwind" von "MS" ist da auch bestimmt sehr hilfreich.
mfg
Hallo Mike,

bei mir löscht der code auch das eingefügte Bild. Wie ich schon schrieb, darf man es danach nicht verschieben.

Bild an andere Stelle:

Ändere dazu 3 Stellen im code:
$C$1 auf die gewünschte Zelle, z.B. $F$1
Cells(1, 3) auf die gewünschte zelle, z.B Cells(1, 6) für F1

Hallo Günter,
die Artikelnummer wird eingegeben - Worksheet_Change ... Zum Test einfach den code in ein Tabellenblattmodul einfügen, das Verzeichnis und ggf. die Erweiterung jpg anpassen und in A1 den Bildnamen eingeben...

Hallo Frank,
wieso? Die Bilder liegen auf Platte, und ohne Access kannst Du die Nordwind nicht öffnen, höchstens per Query oder auf anderen Wegen Daten rausholen oder anschauen.
Hallo Willwissen,

du hast recht, eine Bespielmappe wäre schon besser, wenn ich die mal hier hinein poste. ;)

Der passende code ist mit enthalten, doch leider funktioniert es bei mir nicht so richtig.
Wie ich am Anfang erwähnte bin ich totaler Anfänger und haben diesen Code im Netz gefunden und auf meine Mappe angeglichen.

Meine Artikel-Bilder liegen auf Festplatte und haben den selben Namen, wie die Artilnummer, die ich unter K4
eingebe.

Vielleicht könnt ihr mir so jetzt besser helfen.

Vielen Dank noch einmal für eure Mühe.
Hallo Mike,

wie ich schon sagte, der code funktioniert.
Hi schauan,

Ja....er finktioniert. Nachdem ich ihnhier gepostet habe, habe ich ihn in meiner Mappe ausprobiert und es finktionierte super.

Ich hoffe es bleibt so. Danke.


Mike