Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
940to944
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
940to944
940to944
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Bilder automatisch anzeigen

Bilder automatisch anzeigen
10.01.2008 15:03:14
Gerhard
Hallo zusammen
Bitte um Hilfe
wie kann ich in einer Tabelle via VBA, nur in der Spalte D: ab D7 wenn die Zelle aktiv ist automatisch ein Bild mit dem Namen 4711_1 anzeigen?
Wenn die Zelle D8 aktiv ist sollte das Bild: 4711_2 angezeigt werden usw. bis Zelle D50.
Die Bilder sind im Verzeichnis:
D:\Bilder\4711_1.jpg
4711_2.jpg
4711_3.jpg
4711_4.jpg
usw.
Die Bilder sollten immer am Bildschirm rechts oben erscheinen!
Vielen Dank für Eure Hilfe
Gruß Gerhard

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

Betreff
Datum
Anwender
Anzeige
AW: Bilder automatisch anzeigen
10.01.2008 15:13:09
Hajo_Zi
Hallo Gerhard,
da ist mir der falsche Abspann in den Beitrag gerutsch.
Gruß Hajo

AW: Bilder automatisch anzeigen
10.01.2008 15:40:41
Holger
Hallo Gerhard,
das Grundprinzip für dein Makro erhälst du nachstehend. Das SelectionChange-Ereignis wird bei Änderung der Markierung auf dem Tabellenblatt ausgelöst, in dessen Codeteil das Makro eingefügt wurde (im Porjekt-Fenster unter Microsoft Excel Objekte doppelt anklicken und in das sich dann öffnede große Code-Fenster kopieren). Target ist die markierte Zelle. Die Case-Anweisungen musst du noch systematisch auffüllen. Ich habe extra kein Verfahren zur Bestimmung der Bildnamen verwendet, damit du ganz frei in der Zuordnung bis. Die Zeilen ab For Each r ... sind erforderlich, um ein altes Bild zu löschen (deshalb die Static-Deklaration für den Bildnamen). Cells(1,5) entspricht der Zelle E1. Wenn du dein Bild weiter rechts haben willst, musst du den 2. Index erhöhen.

Private Sub Worksheet_SelectionChange(ByVal target As Range)
Static a As String
If target.Column  4 Then Exit Sub
Select Case target.Row
Case 7
Pfad = "D:\Bilder\4711_1.jpg"
Case 8
Pfad = "D:\Bilder\4711_2.jpg"
Case 9
'usw.
Case 50
Pfad = "D:\Bilder\4711_44.jpg"
Case Else
Exit Sub
End Select
If a  "" Then
r = False
For Each c In Shapes
If c.Name = a Then r = True: Exit For
Next
If r = True Then
ActiveSheet.Shapes(a).Select
Selection.delete
End If
End If
Cells(1, 5).Select
ActiveSheet.Pictures.Insert(Pfad).Select
a = Selection.Name
End Sub


Viel Erfolg
Holger

Anzeige
AW: Bilder automatisch anzeigen
10.01.2008 16:08:00
Gerhard
Hallo Holger,
Vielen Dank für Deine schnelle Hilfe!
funktioniert super...
habe nur noch 1 Frage!
Meine Bilder haben bei der Anzeige unterschiedliche Größen
Ist es möglich die Bildgröße für alle Bilder in dem Programm einheitlich in gleicher Größe
vorzugeben?
Vielen Dank
Gruß Gerhard

AW: Bilder automatisch anzeigen
13.01.2008 18:04:00
Gerhard
Hallo Holger,
wie lassen sich in dem Makro noch folgende Punkte realisieren?
1. Wenn Cursorposition nicht in dem Bereich von D7 bis D50 steht darf kein Bild angezeigt werden
Bild das vorher geladen ist muss bei Verlassen des Bereichs gelöscht werden.
Beispiel: ich stehe in Zelle D10 dann wird entsprechendes Bild geladen und angezeigt.
wenn ich dann z.B. in Zelle C10 wechsele darf kein Bild mehr angezeigt werden!
2. In den Zellen D7 bis D50 steht eine Zeichnungsnr. diese Zelle kann ich mit dem Makro nicht mehr
ändern (läßt sich nicht mehr editieren).
Zellen müssen editierbar bleiben.
Viele Dank für die Hilfe
Gruß Gerhard
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige