cibleo
XLDnaute Impliqué
Bonjour le Forum,
J'aimerais poser une question aux "Harry Potter" du VBA.
Ci-dessous un code qui fonctionne bien : il insère des images en les nommant successivement : pompe1, pompe2, pompe3 etc....
Mais après quelques tests, je me suis aperçu que la suppression manuelle d'une image suivi d'une nouvelle insertion entrainait un petit Bug.
Je m'explique :
Sont insérées mes 3 premières images, je supprime manuellement l'une d'elle (en l'occurence l'image2), me reste alors les 2 images nommées pompe1 et pompe3 .
Dès lors, si je veux effectuer une nouvelle insertion d'image, le message suivant apparaît :Erreur d'exécution '70' Permission refusée.
Dans le code l'instruction suivante est ainsi surlignée
.Name = "pompe " & nombre_pompes + 1
Evidemment si je supprime l'image pompe3 au lieu de la n°2, tout fonctionne à merveille.
Comment puis je corriger ce bug ?
Merci de votre aide Cibleo
J'aimerais poser une question aux "Harry Potter" du VBA.
Ci-dessous un code qui fonctionne bien : il insère des images en les nommant successivement : pompe1, pompe2, pompe3 etc....
Mais après quelques tests, je me suis aperçu que la suppression manuelle d'une image suivi d'une nouvelle insertion entrainait un petit Bug.
Je m'explique :
Sont insérées mes 3 premières images, je supprime manuellement l'une d'elle (en l'occurence l'image2), me reste alors les 2 images nommées pompe1 et pompe3 .
Dès lors, si je veux effectuer une nouvelle insertion d'image, le message suivant apparaît :Erreur d'exécution '70' Permission refusée.
Dans le code l'instruction suivante est ainsi surlignée
.Name = "pompe " & nombre_pompes + 1
Code:
Private Sub Gazole_Click()
If Not Intersect(Selection, Range("C3:IJ33")) Is Nothing Then
Dim MyCell As Range
Dim MyPicture As Picture
Dim image$
image = "C:\Documents and Settings\JEAN-FRANÇOIS\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
.Name = "pompe " & nombre_pompes + 1
.LockAspectRatio = msoFalse
.Height = MyCell.Height
.Width = MyCell.Width
End With
MyCell.Select
Exit Sub
End If
MsgBox "Mauvaise Sélection !", , Range("A2").Value
Range("A1").Select
End Sub
Evidemment si je supprime l'image pompe3 au lieu de la n°2, tout fonctionne à merveille.
Comment puis je corriger ce bug ?
Merci de votre aide Cibleo