IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

(EXCEL) Effacer des images gif insérées sur une feuille ?


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Candidat au Club
    Inscrit en
    Août 2005
    Messages
    1
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 1
    Par défaut (EXCEL) Effacer des images gif insérées sur une feuille ?
    Dans une macro d'une feuille de calcul Excel, j'utilise plusieurs fois l'instruction
    object.Pictures.Insert(chemin) pour faire afficher des images gif sur une feuille de calcul. Or, quand je fais éxécuter à nouveau la macro, de nouvelles images se superposent aux précédentes sans les effacer et il y a accumulation d'images les unes sur les autres.

    Quelle instruction utiliser pour effacer toutes les images avant de commencer à afficher une nouvelle série ?

    Merci beaucoup par avance de votre réponse.

    [/quote]

  2. #2
    Expert confirmé

    Homme Profil pro
    Inscrit en
    Août 2005
    Messages
    3 317
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2005
    Messages : 3 317
    Par défaut
    bonsoir

    il faut déterminer le nom ou l'index de l'objet dans la feuille , pour le supprimer

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ActiveSheet.Shapes("Cible").Delete

    dans cet exemple , l'image insérée à l'emplacement de la plage D3:E8 est automatiquement nommée "Cible"
    si le nom de l'image existe déja dans la feuille , l'ancienne image est supprimée

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    Sub InsertionImage()
    Dim Emplacement As Range
    Dim image As Object
    Dim ShapeObj As Object
     
    On Error GoTo fin:
    For Each ShapeObj In ActiveSheet.DrawingObjects ' boucle pour supprimer ancienne image
    If ShapeObj.Name = "cible" Then ActiveSheet.Shapes("cible").Delete
    Next ShapeObj
     
    Application.Dialogs(xlDialogInsertPicture).Show
    Set Emplacement = Range("D3:E8")
     
    Set image = ActiveSheet.DrawingObjects(2) 'adapter selon nombre total de shapes dans feuille
    With image.ShapeRange
    .Name = "cible" ' nommer l'image insérée ( pour la supprimer plus facilement ensuite )
    .LockAspectRatio = msoFalse
    .Left = Emplacement.Left
    .Top = Emplacement.Top
    .Height = Emplacement.Height
    .Width = Emplacement.Width
    End With
     
    Exit Sub
    fin:
    If Err = 1004 Then MsgBox "Insertion d'image interrompue . "
    End Sub

    deux autres exemples pour supprimer toutes les images d'une feuille

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Sub supprimerImagesFeuille() 
    Dim Sh As Shape 
     
    For Each Sh In Worksheets("Feuil1").Shapes 
    If Sh.Type = msoPicture Then Sh.Delete 
    Next 
     
    End Sub

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Sub suppressionImagesFeuille()
    activeSheet.Pictures.Delete
    End Sub

    bonne soiree
    michel

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Afficher des images en cliquant sur une ligne d'une table
    Par o.abdelmalek13 dans le forum WebDev
    Réponses: 2
    Dernier message: 17/07/2018, 19h26
  2. Réponses: 4
    Dernier message: 20/06/2014, 17h07
  3. Focus dans un textbox inséré sur une feuille
    Par PPN83 dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 21/11/2010, 23h18
  4. Réponses: 9
    Dernier message: 04/04/2007, 11h16
  5. insérer des images gif ds une midlet j2me
    Par white-rabbit dans le forum Java ME
    Réponses: 19
    Dernier message: 20/07/2006, 14h31

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo