# UserForm Bild Löschen



## valeripf (22. Januar 2014)

hi Ich Habe Folgende Problemm

ich habe Image (Bild) die mit OKButton als Hyperlink in die Tabelle überträgt  ("Klick Mich") Hyperlink zum Bild
ich will in UserForm dieser Bild Löschen mit ein Button  

ich habe versucht mit 

```
Private Sub CoverLöschButton_Click()
    imgImage1.Picture = LoadPicture("")
End Sub
```

Das Löscht dann in Userform aber Übertragt immer nocht in Tabelle als ("Klick Mich") Hyperlink zum Bild
Soll normal bei LeereBild Anzeigen "Kein Bild"

Code Von Images


```
With ActiveSheet
                If Trim(imgImage1.Tag) = "" Then
                    .Cells(lFreie, 14).Value = "Kein Bild"
                    Else
                    .Hyperlinks.Add Anchor:=.Cells(lFreie, 14), _
                        Address:=imgImage1.Tag, _
                        ScreenTip:=imgImage1.Tag, _
                        TextToDisplay:="Klick mich"
                End If
            End With
```

Bitte Helf mir


----------



## tombe (22. Januar 2014)

Die Meldung "Kein Bild" wird dann angezeigt, wenn *imgImage1.Tag* leer ist!

So wie ich das verstehe, löscht du ja nicht das Bild bzw. das Image-Object sondern leerst es lediglich!?


----------



## valeripf (22. Januar 2014)

Gibt Andere Möglichkeit?

ich will wenn Das Bild in UserForm Einfügen und Wieder mit Button Löschen 
auch dann bei Übertragen in Tabelle "Kein Bild " Anzeigt


----------



## tombe (22. Januar 2014)

Ob es eine andere Möglichkeit gibt kann ich dir nicht sagen. Ich habe keine Ahnung wie du die Bilder/das Bild in der Userform "speicherst".

Kann es sein das du in dem Link nur den Pfad zum Bild speicherst und beim Anklicken dann die Userform geöffnet und das Bild angezeigt wird?


----------



## valeripf (22. Januar 2014)

ach so Sorry 


```
' Bild auswählen
Function GetFile() As String
    With Application.FileDialog(msoFileDialogFilePicker)
        .AllowMultiSelect = False
        .Filters.Add "Images", "*.gif; *.jpg; *.jpeg"
        .ButtonName = "Bild laden"
        .Title = "Bild auswählen"
        .Show
        If .SelectedItems.Count = 0 Then
            GetFile = ""
        Else
            GetFile = .SelectedItems(1)
        End If
    End With
End Function
```


```
Private Sub imgImage1_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
   ' Bild auswählen und Pfad und Bildname in tag schreiben
   imgImage1.Tag = GetFile
   ' Bild ins Image einfügen
   imgImage1.Picture = LoadPicture(imgImage1.Tag)
   ' UserForm aktialisieren damit Bild angezeigt wird (kann einen Augenblick dauern)
   NeuFormular.Repaint
End Sub
```


----------



## tombe (22. Januar 2014)

Mit der Funktion GetFile holst du dir den Pfad und Dateiname des Bildes und speicherst ihn wie schon vermutet im *imgImage1.Tag*. Den so gespeicherten Wert nimmst du auch um dann das Bild anzuzeigen.

Schau mal was passiert wenn du den Code zum Löschen wie folgt änderst:


```
Private Sub CoverLöschButton_Click()
    imgImage1.Picture = LoadPicture("")
    imgImage1.Tag = ""
End Sub
```

Das was du oben unter der Überschrift "Code Von Images" eingestellt hast muss dann natürlich auch ausgeführt werden. Wobei eventuell die Zellangaben noch angepasst werden müssen!?


----------



## valeripf (22. Januar 2014)

Super Funktioniert

Vielen Danke ******!


----------

