OVH Cloud OVH Cloud

Suppression d'une image quelconque

3 réponses
Avatar
ARc125
mon problème de macro :

Sub Maclup()
Sheets("Feuil2").Select
Range("B5").Select
ActiveSheet.Pictures.Insert( _
"C:\sinopsys\images\Exemple.jpg" _
).Select
Selection.ShapeRange.LockAspectRatio = msoFalse
Selection.ShapeRange.Height = 159#
Selection.ShapeRange.Width = 310.5
Sheets("Feuil2").Select
Range("F3").Select
End Sub
_________________________________________
Sub Retour()
ActiveSheet.Shapes("Picture 66").Select
Selection.Delete
Sheets("Feuil1").Select
Range("B2").Select
End Sub

_________________________________________
la première macro charge sur la feuille2 l'image "Exemple.jpg" et la
redimensionne, mon problème est que la deuxième macro doit pouvoir ensuite
supprimer "toute image" affichée au même endroit comment modifier la première
ligne d'instruction de la deuxième macro pour qu'elle marche avec n'importe
quelle image :
ActiveSheet.Shapes("Picture 66").Select

Avec mes remerciements a celui qui me donnera une solution
bien amicalement.
--
Si tu veux être respecté, respecte les autres ... enfin c'est ta vie ^^

3 réponses

Avatar
Dude
remplace
ActiveSheet.Shapes("Picture 66").Select
Selection.Delete
par
For Each Image In ActiveSheet.Shapes
If Union(Image.TopLeftCell, Range("B2")).Address = _
Range("B2").Address Then Image.Delete ' à
moduler en fonction de la cellule que l'on veut "nettoyer" évidemment
Next


"ARc125" wrote in message
news:
mon problème de macro :

Sub Maclup()
Sheets("Feuil2").Select
Range("B5").Select
ActiveSheet.Pictures.Insert( _
"C:sinopsysimagesExemple.jpg" _
).Select
Selection.ShapeRange.LockAspectRatio = msoFalse
Selection.ShapeRange.Height = 159#
Selection.ShapeRange.Width = 310.5
Sheets("Feuil2").Select
Range("F3").Select
End Sub
_________________________________________
Sub Retour()
ActiveSheet.Shapes("Picture 66").Select
Selection.Delete
Sheets("Feuil1").Select
Range("B2").Select
End Sub

_________________________________________
la première macro charge sur la feuille2 l'image "Exemple.jpg" et la
redimensionne, mon problème est que la deuxième macro doit pouvoir ensuite
supprimer "toute image" affichée au même endroit comment modifier la
première
ligne d'instruction de la deuxième macro pour qu'elle marche avec
n'importe
quelle image :
ActiveSheet.Shapes("Picture 66").Select

Avec mes remerciements a celui qui me donnera une solution
bien amicalement.
--
Si tu veux être respecté, respecte les autres ... enfin c'est ta vie ^^


Avatar
LSteph
Bonjour ,
Une cellule peut contenir plusieurs images et en fait la position
d'insertion d'une image dispose de coordonnées donc s'il s'agit
d"'enlever l'image qui était avant celle qu'on insère, on pourrait
simplifier l' objectif par remplacer l'image (1)
on relève ses coordonnées ,
on la supprime et
on insère l'autre au même endroit
Voici un exemple auquel tu pourra adapter les autres propriétés
que tu souhaites.height .width etc...

*****
Sub RplcImg()
Dim posLeft As String
Dim posTop As String


ActiveSheet.Shapes(1).Select
posLeft = Selection.ShapeRange.Left
posTop = Selection.ShapeRange.Top
Selection.Delete
ActiveSheet.Pictures.Insert( _
"C:MoncheminMondossierLaphoto.JPG").Select
Selection.ShapeRange.Left = posLeft
Selection.ShapeRange.Top = posTop

End Sub
'*****

'lSteph

"ARc125" a écrit dans le message de news:

mon problème de macro :

Sub Maclup()
Sheets("Feuil2").Select
Range("B5").Select
ActiveSheet.Pictures.Insert( _
"C:sinopsysimagesExemple.jpg" _
).Select
Selection.ShapeRange.LockAspectRatio = msoFalse
Selection.ShapeRange.Height = 159#
Selection.ShapeRange.Width = 310.5
Sheets("Feuil2").Select
Range("F3").Select
End Sub
_________________________________________
Sub Retour()
ActiveSheet.Shapes("Picture 66").Select
Selection.Delete
Sheets("Feuil1").Select
Range("B2").Select
End Sub

_________________________________________
la première macro charge sur la feuille2 l'image "Exemple.jpg" et la
redimensionne, mon problème est que la deuxième macro doit pouvoir ensuite
supprimer "toute image" affichée au même endroit comment modifier la
première
ligne d'instruction de la deuxième macro pour qu'elle marche avec
n'importe
quelle image :
ActiveSheet.Shapes("Picture 66").Select

Avec mes remerciements a celui qui me donnera une solution
bien amicalement.
--
Si tu veux être respecté, respecte les autres ... enfin c'est ta vie ^^


Avatar
ARc125
Merci Dude ta solution repond parfaitement à mon problème.
A+