cibleo
XLDnaute Impliqué
Bonjour le forum,
Voilà, je vous présente 2 codes qui fonctionne bien et dont le principe est le même : insérer une image GIF dans une cellule à partir d'un bouton (Gazole) placé sur ma feuille de calcul.
Le premier :
et le deuxième :
Le premier code va me chercher l'image (Pompe.gif) sur mon disque dur. Dans le deuxième code, mon image est stockée dans la "Feuil1" de mon classeur. ("Image 14") = Pompe.gif
Pour le stockage de l'image, je préfere retenir la première solution, d'autant que ce code me restitue l'image à la taille de la cellule de destination contrairement au deuxième code.
Par contre, j'aimerais adapter le principe du deuxième code qui limite l'insertion de l'image à une plage donnée (C3:IJ33) avec apparition d'une Msgbox lors d'une mauvaise sélection.
Qui pourrait rectifier mon premier code en y intégrant le principe décrit ci-dessus (If Not Intersect(Selection, Range("C3:IJ33")) etc...), je n'y arrive pas !!!!
Merci de votre aide Cibleo
Voilà, je vous présente 2 codes qui fonctionne bien et dont le principe est le même : insérer une image GIF dans une cellule à partir d'un bouton (Gazole) placé sur ma feuille de calcul.
Le premier :
Code:
Private Sub Gazole_Click()
Dim MyCell As Range
Dim MyPicture As Picture
Dim image$
image = "C:\Documents and Settings\Moi\Mes documents\Mes images\Pompe.gif" 'ou le chemin désiré
Set MyCell = ActiveCell
MyCell.Select
Set MyPicture = ActiveSheet.Pictures.Insert(image)
With MyPicture.ShapeRange
.LockAspectRatio = msoFalse
.Height = MyCell.Height
.Width = MyCell.Width
End With
MyCell.Select
End Sub
et le deuxième :
Code:
Private Sub Gazole_Click()
If Not Intersect(Selection, Range("C3:IJ33")) Is Nothing Then
With Sheets("Feuil1")
.Shapes("Image 14").Copy
End With
ActiveSheet.Paste
Selection.ShapeRange.Left = ActiveCell.Left + 1
Selection.ShapeRange.Top = ActiveCell.Top + 2
Range("A1").Select
Exit Sub
End If
MsgBox "Mauvaise Sélection !"
Range("A1").Select
End Sub
Le premier code va me chercher l'image (Pompe.gif) sur mon disque dur. Dans le deuxième code, mon image est stockée dans la "Feuil1" de mon classeur. ("Image 14") = Pompe.gif
Pour le stockage de l'image, je préfere retenir la première solution, d'autant que ce code me restitue l'image à la taille de la cellule de destination contrairement au deuxième code.
Par contre, j'aimerais adapter le principe du deuxième code qui limite l'insertion de l'image à une plage donnée (C3:IJ33) avec apparition d'une Msgbox lors d'une mauvaise sélection.
Qui pourrait rectifier mon premier code en y intégrant le principe décrit ci-dessus (If Not Intersect(Selection, Range("C3:IJ33")) etc...), je n'y arrive pas !!!!
Merci de votre aide Cibleo
Dernière édition: