Problème avec une macro sous Excel

scoubi05 Messages postés 5 Statut Membre -  
m@rina Messages postés 27617 Date d'inscription   Statut Modérateur Dernière intervention   -
Bonjour,

Je rencontre actuellement un problème avec une macro sur une liste déroulante sur mon fichier Excel.

J’ai créé une liste déroulante proposant 2 choix : « oui » et « non ».

A cette liste déroulante j’ai affectée une macro qui à pour but de :

Lorsque le « oui » est sélectionner, un Wordart apparaît sur la page. Et lorsque le « non » est sélectionner rien n’apparaît.

Le problème est le suivant : Lorsque je sélectionne « oui », la macro me fait bien affiché le wordart, par contre lorsque de suite après je sélectionne le « non », la macro n’arrive pas à m’effacer le wordart.

Extrait de ma macro :

valeur = Range("DA1").Value

If (valeur = 1) Then

ActiveSheet.Shapes.AddTextEffect(msoTextEffect1, "ONGLET TRAITE", "Arial Black" _

, 36#, msoFalse, msoFalse, 268.5, 189#).Select

Selection.ShapeRange.IncrementRotation -19.98

Selection.ShapeRange.IncrementLeft -60#

Selection.ShapeRange.IncrementTop -66.75

End If

If (valeur1 = 2) Then

ActiveSheet.Shapes("WordArt 135").Select

Selection.Delete

End If

Fin extrait macro.

Le problème c’est le numéro du WordArt, il n’est pas fixe. Ici il a 135...mais si je re-sélectionne le lendemain « oui », il aura un autre numéro...136 ou 137...Et donc j’aurais une erreur dans le script.

Merci de m’aider à régler ce problème.

Cordialement »
Configuration: Windows XP Internet Explorer 7.0

2 réponses

  1. thev Messages postés 2006 Date d'inscription   Statut Membre Dernière intervention   722
     
    If (valeur = 2) Then
    
        For Each objet_wordart In ActiveSheet.Shapes
            objet_wordart.Delete
        Next objet_wordart
    
    End If
    0
    1. scoubi05 Messages postés 5 Statut Membre
       
      Bonjour,

      Merci pour votre aide...mais maintenant le problème est le suivant :

      J'ai une liste de choix où je dois choisir oui ou non.

      Maintenant Si je choisi "oui" le Wordart apparait par contre si je choisi "Non", le wordart disparait ainsi que ma liste de choix...de ce fait je ne peux plus modifier mon choix et donc repassé en réponse "Oui".

      Merci pour votre aide

      cordialement
      0
  2. m@rina Messages postés 27617 Date d'inscription   Statut Modérateur Dernière intervention   11 563
     
    Bonsoir,

    Ben oui, tout ces objets sont des SHAPE, donc tous les objets graphiques, contrôles compris, seront supprimés ! :D

    Remplace par :

    For Each wordart In ActiveSheet.Shapes
    If Left(wordart.Name, 7) = "WordArt" Then
    wordart.Delete
    End If
    Next


    Pourt un code correct, n''oublie pas de déclarer les variables (Dim Wordart as shape)
    0