AW: Bilder einlesen
12.11.2006 21:12:43
fcs
Hallo Mark,
hier eine mögliche Lösung, wobei das Image1 allerdings nur stört und ich mit Excel97 sowieso Probleme hatte das Image zu greifen. Habs dann per Makro löschen können.
Ergänze/Ändere die Makros im Vba-Editor unter der Tabelle "Massen 1". Für weiter Formen nuss du dann jeweils einen weiteren Case-Block ergänzen.
Gruss
Franz
Private Sub Worksheet_Change(ByVal Target As Range)
' MsgBox "Eine Zelle wurde verändert!!", , "Veränderung"
If Target.Address = "$B$7:$C$7" Then
'Abbildung plazieren
Select Case Target.Range("A1").Value
Case "Zylinder"
Figur = "Bild 1"
Case "Kegel"
Figur = "Bild 2"
Case Else
Figur = "Keine"
End Select
Call BildEinblenden(Figur, Me.Range("H5"), Me.Range("B8"))
End If
End Sub
Private Sub BildEinblenden(ByVal Bild As String, EinfuegeZelle As Range, ZelleSelektion As Range)
If Bild = "Keine" Then Exit Sub
'Altbild entfernen
On Error Resume Next 'falls Abbildung nicht vorhanden
Me.Shapes("Abbildung").Delete
'Neues Bild Kopieren und einfügen
Me.Shapes(Bild).Copy
EinfuegeZelle.Select
Me.Paste
With Selection
'Bild benennen
.Name = "Abbildung"
'Bild poistionieren
.Top = EinfuegeZelle.Top
.Left = EinfuegeZelle.Left
'Bild mit Rahmenlinien versehen
.ShapeRange.Fill.Visible = msoFalse
.ShapeRange.Fill.Transparency = 0#
.ShapeRange.Line.Weight = 2#
.ShapeRange.Line.DashStyle = msoLineSolid
.ShapeRange.Line.Style = msoLineSingle
.ShapeRange.Line.Transparency = 0#
.ShapeRange.Line.Visible = msoTrue
.ShapeRange.Line.ForeColor.SchemeColor = 8
.ShapeRange.Line.BackColor.RGB = RGB(255, 255, 255)
End With
ZelleSelektion.Select
End Sub