PDA

Vollständige Version anzeigen : Bild in Excel vergrößern/verkleinern


Willi2208
19.01.2005, 15:50
Hallo liebe Leute, ich habe eine Liste meines Sortiments in Excel geschrieben.
Am Anfang der Liste ist ein kleines Bild des Artikels. Ich hatte mal bei einem Kollegen gesehen, dass wenn er mit dem Mauszeiger auf das kleine Bild fährt, das Bild groß wird, wenn er wieder weg fährt das Bild wieder seine kleine größe hatte. Wie kann man das (ev. mit einem Makro) realisieren.

Für alle Eure Antworten dankbar
Willi

Venom
19.01.2005, 16:02
Habe das zwar noch nie gamacht aber ich würd es wahrscheinlich mit einem Mouseover befehl probieren und die height bzw. width eigenschaften verä#ndern.

Oder du machst es bei klick auf das Symbol und fragst mit der If schleife ab welche größe es momentan hat und dementrechend lässt du es anzeigen..

So die Richtung würde ich es probieren

Willi2208
20.01.2005, 11:27
Danke Venom für die schnelle Antwort. Den Mouseover Befehl konnte ich nicht finden, habe es mit einem Makro probiert, allerdings meldet mein Pc den Laufzeitfehler 438.
Nach wie vor ratlos mit lieben Grüßen
Willi

Lumpensammler
20.01.2005, 11:40
Hallo, Willi,

wenn Du Deinen Code postest oder eine Beispielmappe anhängst. Ich kann von hier aus nicht erkennen, welche Eigenschaft oder Methode nicht gefunden wurde.

Gruß
LS

Willi2208
20.01.2005, 11:59
GutenTag Lumpensammler, habe die Datei angehängt.
Liebe Grüße
Willi

Lumpensammler
20.01.2005, 15:10
Hallo, Willi,

abgesehen von der Selektiererei - so funktioniert es bei mir:

Sub Bild2_BeiKlick()
ActiveSheet.Shapes("Picture 2").Select
With Selection.ShapeRange
If .Height < 100 Then ' ggf. anpassen
.ScaleWidth 6.38, msoFalse, msoScaleFromTopLeft
.ScaleHeight 6.38, msoFalse, msoScaleFromTopLeft
Range("G1").Select
ElseIf .Height > 100 Then ' ggf. anpassen
.ScaleWidth 0.16, msoFalse, msoScaleFromTopLeft
.ScaleHeight 0.15, msoFalse, msoScaleFromTopLeft
Range("B1").Select
End If
End With
End Sub
Gruß
LS

Willi2208
20.01.2005, 15:30
Hallo Lumpensammler ,super, super gemacht, so habe ich mir das vorgestellt.
Herzlichen Dank. Eine Kleinigkeit noch, das Bild wird beim zumachen in der Höhe immer kleiner, kann man das noch einstellen? Sonst alles klar, nochmals Danke sagt Willi

Lumpensammler
20.01.2005, 15:42
Hallo, Willi,

stimmt, wenn man es oft genug durchführt. Bei der folgenden Version sollte es eigentlich konstant bleiben (Maße bitte anpassen):
Sub Bild2_BeiKlick()
ActiveSheet.Shapes("Picture 2").Select
With Selection.ShapeRange
If .Height < 100 Then ' ggf. anpassen
.ScaleWidth 6.38, msoTrue, msoScaleFromTopLeft
.ScaleHeight 6.38, msoTrue, msoScaleFromTopLeft
Range("G1").Select
ElseIf .Height > 100 Then ' ggf. anpassen
.ScaleWidth 0.68, msoTrue, msoScaleFromTopLeft
.ScaleHeight 0.73, msoTrue, msoScaleFromTopLeft
Range("B1").Select
End If
End With
End Sub
Gruß
LS

Willi2208
20.01.2005, 16:10
Hallo Lumpensammler, vielen Dank jetzt passt alles. Liebe Grüße und schönen Abend noch, willi