Hi Profis
Kann man bei Excel (2002) eingefügte Bilder verstecken?
Also, wenn ich die Bilder normal einfüge, dann werden die Zeilen zu hoch. Darum möchte ich die Bilder gerne verstecken.
Ähnlich so, wie man es von verschiedenen Webseiten kennt. Man fährt mit der Maus drüber und das Bild wird sichtbar.
Oder halt wie das „Kommentar einfügen“. Nur, das es halt ein Bild und kein Text ist. Perfekt wäre auch ein optischer Hinweis, dass ein Bild zu dieser Zelle/Zeile vorhanden ist (wie das rote Dreieck oben rechts in der Zelle bei vorhandenen Kommentaren).
Gruß
schatten
Hallo Schatten,
Kann man bei Excel (2002) eingefügte Bilder verstecken?
ja.
Ähnlich so, wie man es von verschiedenen Webseiten kennt. Man
fährt mit der Maus drüber und das Bild wird sichtbar.
Ginge wahrscheinlich auch, ist mir jetzt aber zu anspruchsvoll zu programmieren.
Perfekt wäre auch ein optischer
Hinweis, dass ein Bild zu dieser Zelle/Zeile vorhanden ist
Kein Problem.
Die Prozedur „Bilder“ erzeugt in der aktiven zelle ein blaues Dreieck, dem ein Bild hinterlegt ist.
Durch Klick auf das Dreieck kannst du das Bild erscheinen , verschwinden lassen.
Ändere den Bildpfad in „Bilder“ bei
Bild = "C:\Dokumente und Einstellungen\All Users…
In Modul1:
Option Explicit
'
Sub Bilder()
Dim Zelle As Range, Bild As String
Bild = "C:\Dokumente und Einstellungen\All Users.WINDOWS\Dokumente\Eigene Bilder\Beispielbilder\Wasserlilien.jpg"
Set Zelle = ActiveCell
ActiveSheet.Shapes.AddShape(msoShapeRightTriangle, 1, 1, 1, 1).Select
With Selection
.Name = "Indi" & Zelle.Address
.Top = Zelle.Offset(1, 0).Top - 6
.Left = Zelle.Left
.Height = 6#
.Width = 6#
.ShapeRange.Fill.ForeColor.SchemeColor = 12
.ShapeRange.Line.ForeColor.SchemeColor = 12
.OnAction = "EinAus"
End With
ActiveSheet.Pictures.Insert(Bild).Select
With Selection
.Name = "Bild" & Zelle.Address
.Top = Zelle.Top
.Left = Zelle.Offset(0, 1).Left
.Height = 50#
.Width = 50#
.OnAction = "Nix"
End With
Zelle.Offset(1, 0).Select
ActiveSheet.Shapes("Bild" & Zelle.Address).Visible = False
End Sub
'
Sub EinAus()
With ActiveSheet.Shapes(Replace(Application.Caller, "Indi", "Bild"))
.Visible = Not .Visible
End With
End Sub
'
Sub Nix()
'mache nix
End Sub
Gruß
Reinhard
Hallo Reinhard
Vielen, vielen Dank für Deine Antwort und die Mühe, die Du Dir gemacht hast.
Kein Problem.
Aber ehrlich gesagt hatte ich auf eine einfachere Möglichkeit gehofft. Eine Funktion innerhalb Excels, welche ich bisher nur noch nicht gefunden hatte.
Mit Deiner Anwort kann ich leider nicht viel anfangen, da es meine Fähigkeiten als PC-Laie bei weitem übersteigt.
Aber ich werde mich mal genauer damit beschäftigen. Zeit habe ich genug, das ist nicht das Problem.
Gruß
schatten