Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Effacer des images selon une sélection

6 réponses
Avatar
Caroual
Bonjour,
Sur une feuille excel, j'ai une macro qui m'importe des images de graphique,
je voudrais pouvoir supprimer par macro les anciennes images à chaque fois
que j'actualise et que je vais en chercher de nouvelles.
Le problème est que sur cette feuille j'ai plusieurs autres images que je ne
veux pas supprimer. Je cherche donc une commande qui dirait :
suppression de toutes les images qui se trouvent dans la zone de selection.
J'ai essayé de sélectionner une zone et de faire clear ou delete mais mes
images sont toujours là !!

est-ce possible ?
Caroual

6 réponses

Avatar
Philippe.R
Bonsoir,
Une piste : lister le nom des images que tu souhaites conserver et dans une
boucle balayant toutes les images pour les supprimer, gérer l'exclusion de
celles listées à l'aide d'un test sur le nom d'icelles
--
Avec plaisir
http://dj.joss.free.fr/trombine.htm
http://jacxl.free.fr/mpfe/trombino.html
Philippe.R
Pour se connecter au forum :
http://www.excelabo.net/web/mpfe
News://news.microsoft.com/microsoft.public.fr.excel
"Caroual" a écrit dans le message de
news:%
Bonjour,
Sur une feuille excel, j'ai une macro qui m'importe des images de
graphique, je voudrais pouvoir supprimer par macro les anciennes images à
chaque fois que j'actualise et que je vais en chercher de nouvelles.
Le problème est que sur cette feuille j'ai plusieurs autres images que je
ne veux pas supprimer. Je cherche donc une commande qui dirait :
suppression de toutes les images qui se trouvent dans la zone de
selection.
J'ai essayé de sélectionner une zone et de faire clear ou delete mais mes
images sont toujours là !!

est-ce possible ?
Caroual




Avatar
Caroual
J'y avais pensé mais je ne maitrise pas les définitions de noms.
Normalement il me semble que l'on définit un nom pour un classeur. Or j'ai
une feuille avec les mêmes boutons que je reproduis plusieurs fois par mois
dans le même classeur en faisant des copies de feuilles, je vais donc avoir
plusieurs images que je veux garder avec les mêmes noms dans le classeur, je
pense que cela va me poser des soucis.
C'est pour cela que j'avais pensé que si je pouvais identifier mes images
selon leur place dans la feuille cela aurait été top.
Caroual

"Philippe.R" <AS_rauphil_chez_wanadoo.fr> a écrit dans le message de news:
%23QI$
Bonsoir,
Une piste : lister le nom des images que tu souhaites conserver et dans
une boucle balayant toutes les images pour les supprimer, gérer
l'exclusion de celles listées à l'aide d'un test sur le nom d'icelles
--
Avec plaisir
http://dj.joss.free.fr/trombine.htm
http://jacxl.free.fr/mpfe/trombino.html
Philippe.R
Pour se connecter au forum :
http://www.excelabo.net/web/mpfe
News://news.microsoft.com/microsoft.public.fr.excel
"Caroual" a écrit dans le message de
news:%
Bonjour,
Sur une feuille excel, j'ai une macro qui m'importe des images de
graphique, je voudrais pouvoir supprimer par macro les anciennes images à
chaque fois que j'actualise et que je vais en chercher de nouvelles.
Le problème est que sur cette feuille j'ai plusieurs autres images que je
ne veux pas supprimer. Je cherche donc une commande qui dirait :
suppression de toutes les images qui se trouvent dans la zone de
selection.
J'ai essayé de sélectionner une zone et de faire clear ou delete mais mes
images sont toujours là !!

est-ce possible ?
Caroual







Avatar
michdenis
Bonjour Caroual,

Cela devrait effacer toutes les images contenu
dans une sélection de cellules faites à l'écran.

'-------------------------------------
Sub test1()

Dim Sh As Shape, X As String
Dim Rg As Range

If TypeName(Selection) = "Range" Then
X = Selection.Parent.Name
Set Rg = Selection
With Worksheets(X)
For Each Sh In .Shapes
If TypeName(Sh.OLEFormat.Object) = "Picture" Then
If Not Intersect(Rg, Sh.TopLeftCell) Is Nothing And _
Not Intersect(Rg, Sh.BottomRightCell) Is Nothing Then
If Err = 0 Then
Sh.Delete
Else
Err = 0
End If
End If
End If
Next
End With
End If
End Sub
'-------------------------------------



"Caroual" a écrit dans le message de groupe de discussion :
#
Bonjour,
Sur une feuille excel, j'ai une macro qui m'importe des images de graphique,
je voudrais pouvoir supprimer par macro les anciennes images à chaque fois
que j'actualise et que je vais en chercher de nouvelles.
Le problème est que sur cette feuille j'ai plusieurs autres images que je ne
veux pas supprimer. Je cherche donc une commande qui dirait :
suppression de toutes les images qui se trouvent dans la zone de selection.
J'ai essayé de sélectionner une zone et de faire clear ou delete mais mes
images sont toujours là !!

est-ce possible ?
Caroual
Avatar
Caroual
Mais comment faites-vous pour être si fort ????
C'est génial.

Mille merci

Caroual
"michdenis" a écrit dans le message de news:

Bonjour Caroual,

Cela devrait effacer toutes les images contenu
dans une sélection de cellules faites à l'écran.

'-------------------------------------
Sub test1()

Dim Sh As Shape, X As String
Dim Rg As Range

If TypeName(Selection) = "Range" Then
X = Selection.Parent.Name
Set Rg = Selection
With Worksheets(X)
For Each Sh In .Shapes
If TypeName(Sh.OLEFormat.Object) = "Picture" Then
If Not Intersect(Rg, Sh.TopLeftCell) Is Nothing And _
Not Intersect(Rg, Sh.BottomRightCell) Is Nothing Then
If Err = 0 Then
Sh.Delete
Else
Err = 0
End If
End If
End If
Next
End With
End If
End Sub
'-------------------------------------



"Caroual" a écrit dans le message de groupe de
discussion :
#
Bonjour,
Sur une feuille excel, j'ai une macro qui m'importe des images de
graphique,
je voudrais pouvoir supprimer par macro les anciennes images à chaque fois
que j'actualise et que je vais en chercher de nouvelles.
Le problème est que sur cette feuille j'ai plusieurs autres images que je
ne
veux pas supprimer. Je cherche donc une commande qui dirait :
suppression de toutes les images qui se trouvent dans la zone de
selection.
J'ai essayé de sélectionner une zone et de faire clear ou delete mais mes
images sont toujours là !!

est-ce possible ?
Caroual



Avatar
michdenis
Un commentaire sur la procédure :
Un bout de code qui a été oublié...!

Tout ceci :
'--------------------
If Err = 0 Then
Sh.Delete
Else
Err = 0
End If
'--------------------
peut être remplacé par simplement ceci :
Sh.Delete



"michdenis" a écrit dans le message de groupe de discussion :

Bonjour Caroual,

Cela devrait effacer toutes les images contenu
dans une sélection de cellules faites à l'écran.

'-------------------------------------
Sub test1()

Dim Sh As Shape, X As String
Dim Rg As Range

If TypeName(Selection) = "Range" Then
X = Selection.Parent.Name
Set Rg = Selection
With Worksheets(X)
For Each Sh In .Shapes
If TypeName(Sh.OLEFormat.Object) = "Picture" Then
If Not Intersect(Rg, Sh.TopLeftCell) Is Nothing And _
Not Intersect(Rg, Sh.BottomRightCell) Is Nothing Then
If Err = 0 Then
Sh.Delete
Else
Err = 0
End If
End If
End If
Next
End With
End If
End Sub
'-------------------------------------



"Caroual" a écrit dans le message de groupe de discussion :
#
Bonjour,
Sur une feuille excel, j'ai une macro qui m'importe des images de graphique,
je voudrais pouvoir supprimer par macro les anciennes images à chaque fois
que j'actualise et que je vais en chercher de nouvelles.
Le problème est que sur cette feuille j'ai plusieurs autres images que je ne
veux pas supprimer. Je cherche donc une commande qui dirait :
suppression de toutes les images qui se trouvent dans la zone de selection.
J'ai essayé de sélectionner une zone et de faire clear ou delete mais mes
images sont toujours là !!

est-ce possible ?
Caroual
Avatar
Caroual
Merci,
J'ai aussi utilisé ton code pour faire une impression de ces images seules.
Cela marche super bien

Caroual

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

Un commentaire sur la procédure :
Un bout de code qui a été oublié...!

Tout ceci :
'--------------------
If Err = 0 Then
Sh.Delete
Else
Err = 0
End If
'--------------------
peut être remplacé par simplement ceci :
Sh.Delete



"michdenis" a écrit dans le message de groupe de
discussion :

Bonjour Caroual,

Cela devrait effacer toutes les images contenu
dans une sélection de cellules faites à l'écran.

'-------------------------------------
Sub test1()

Dim Sh As Shape, X As String
Dim Rg As Range

If TypeName(Selection) = "Range" Then
X = Selection.Parent.Name
Set Rg = Selection
With Worksheets(X)
For Each Sh In .Shapes
If TypeName(Sh.OLEFormat.Object) = "Picture" Then
If Not Intersect(Rg, Sh.TopLeftCell) Is Nothing And _
Not Intersect(Rg, Sh.BottomRightCell) Is Nothing Then
If Err = 0 Then
Sh.Delete
Else
Err = 0
End If
End If
End If
Next
End With
End If
End Sub
'-------------------------------------



"Caroual" a écrit dans le message de groupe de
discussion :
#
Bonjour,
Sur une feuille excel, j'ai une macro qui m'importe des images de
graphique,
je voudrais pouvoir supprimer par macro les anciennes images à chaque fois
que j'actualise et que je vais en chercher de nouvelles.
Le problème est que sur cette feuille j'ai plusieurs autres images que je
ne
veux pas supprimer. Je cherche donc une commande qui dirait :
suppression de toutes les images qui se trouvent dans la zone de
selection.
J'ai essayé de sélectionner une zone et de faire clear ou delete mais mes
images sont toujours là !!

est-ce possible ?
Caroual