Excel 2003 - macro - ajout de cellule sous co

JOLARITALE Messages postés 149 Statut Membre -  
Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,
j'ai un grand tableau excel.
chaque ligne est remplie grâce a un menu déroulant.
La sélection de la validation est une feuille a part du classeur regroupant tout les listes de validation.

quand je rentre un contenu de cellule qui n'existe pas dans la liste de validation un message d'info s'ouvre disant que le contenu de la cellule n'apartient pas a la liste de validation mais me laisse continuer a écrire.

je voudrais que lorsque ce message apparait, il me demande si je veux l'ajouter et si je clique sur oui, il insere une copie de la cellule dans la liste de validation corresopondante.

je sais pas si j'ai été bien claire...
Mais est ce que quelqu'un voi ce que je veux dire et a une idée???

Merci d'avance.
Configuration: Windows XP
Internet Explorer 6.0

15 réponses

  1. JOLARITALE Messages postés 149 Statut Membre 4
     
    Ca n'a pas l'aire d'avoir inspiré grand monde...
    0
  2. Le Pingou Messages postés 12274 Date d'inscription   Statut Contributeur Dernière intervention   1 476
     
    Bonjour,
    Votre liste déroulante est bien crée via l'outils de données 'Validation'......
    Si oui le message est étrange car il n'y a que les choix 'Réessayer, Annuler et Aide' ..
    0
  3. JOLARITALE Messages postés 149 Statut Membre 4
     
    Bonjour,
    Dans les options du menu Validation on peut créer une fentre d'erreur qui dit ce qu'on a envi et qui peut soit nous laisser continué soit non annule le contenu de la cellule.
    0
  4. Le Pingou Messages postés 12274 Date d'inscription   Statut Contributeur Dernière intervention   1 476
     
    Bonjour,
    Merci. Il faut créer une macro pour réaliser votre demande.
    Pouvez-vous donner des détails : nombre des listes déroulantes; si elles sont nommées, leurs noms; ou elles se trouvent etc. ?
    L'idéal : mettre une copie du fichier sur www.cjoint.com et poster le lien généré.
    Merci.
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. Le Pingou Messages postés 12274 Date d'inscription   Statut Contributeur Dernière intervention   1 476
     
    Bonjour JOLARITALE,
    J'ai corrigé une faute dans le code, merci d'utiliser cette version : https://www.cjoint.com/?lvuqXLS2bJ
    Bonne découverte.
    0
    1. Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   5 147
       
      Salut Le Pingouin,

      Comment veux tu que Jolaritale exploite ta proposition si tu proposes un code macro verrouillé autant ne rien donner

      A+
      0
      1. Le Pingou Messages postés 12274 Date d'inscription   Statut Contributeur Dernière intervention   1 476 > Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention  
         
        Bonjour,
        Désolé, Le Pingouin c'est pas moi.
        0
      2. Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   5 147 > Le Pingou Messages postés 12274 Date d'inscription   Statut Contributeur Dernière intervention  
         
        Excuses de l'erreur mais c'est Le pingou qui est bien visé

        Jamais Eriiic, Vaucluse, Michel_m etc ... et moi même n'aurions proposé un code verrouillé

        A+
        0
      3. Le Pingou Messages postés 12274 Date d'inscription   Statut Contributeur Dernière intervention   1 476 > Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention  
         
        Bonjour Mike-31,
        Merci de votre remontrance, j'en ferai bonne usage.
        J'ai simplement posté le fichier en oubliant de contrôler la protection du projet.
        0
      4. Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   5 147 > Le Pingou Messages postés 12274 Date d'inscription   Statut Contributeur Dernière intervention  
         
        Salut Jean Pierre,

        J'aime mieux ça

        Bonne soirée
        0
  7. Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   5 147
     
    Bonsoir,
    Vu que Le pingou ne souhaite pas partager son code, voici une procédure
    1/ créer une liste soit en colonne cachée, ou dans une autre feuille, insertion/nom/définir dans nom dans le classeur saisir liste
    Dans fait référence à coller =DECALER(Liste!$A$2;;;NBVAL(Liste!$A:$A)-1)

    2/ créer une liste de validation
    Données/Validation, dans Autoriser sélectionnez Liste
    Dans Source saisir =Liste

    Dans le code feuille collez ce code

    Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Address = "$B$2" Then
    If IsError(Application.Match(Target.Value, [Liste], 0)) Then
    If MsgBox("La valeur - " & Range("B2") & " - ne figure pas dans la liste," & vbCrLf & vbCrLf & "souhaitez vous l'ajouter?", vbYesNo) = vbYes Then
    [Liste].End(xlDown).Offset(1, 0) = Target.Value
    Sheets("Liste").[Liste].Sort key1:=Sheets("Liste").Range("A2")
    Else
    Application.Undo
    End If
    End If
    End If
    End Sub

    Pour créer une liste de liste de validation et éventuellement sur plusieurs colonnes, le code est légèrement différent, dans ce cas à la demande un exemple de fichier sera joint

    A+
    0
    1. Le Pingou Messages postés 12274 Date d'inscription   Statut Contributeur Dernière intervention   1 476
       
      Bonjour Mike-31,
      Comme monsieur JOLARITALE ne se manifeste pas et que vous semblez interressé, voici le fichier : https://www.cjoint.com/?lwv47aEKSP
      Bon dimanche.
      0
  8. Le Pingou Messages postés 12274 Date d'inscription   Statut Contributeur Dernière intervention   1 476
     
    Bonjour Mike-31,
    C'est domage que vous n'avez pas intégré le tri.
    0
    1. Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   5 147
       
      Salut le Pingou,

      Oui effectivement ça sera mieux, à vrai dire je n' y ai pas songé.

      J'ai jeté un oeil également sur ton code, feuille DATA, colonne A lorsque tu saisis une nouvelle valeur, le code bugg

      Bon dimanche
      0
      1. Le Pingou Messages postés 12274 Date d'inscription   Statut Contributeur Dernière intervention   1 476 > Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention  
         
        Bonjour mike-31,
        Désolé tout fonctionne correctement.
        Il serait plus convenable de dire ou se trouve la faute signalé ... et ne pas simplement dire que sa bugg.
        0
  9. Le Pingou Messages postés 12274 Date d'inscription   Statut Contributeur Dernière intervention   1 476
     
    Bonjour Mike-31,
    J'ai essayé votre exemple.
    Il se trouve que si je modifie l'un des titres (Liste 1, Liste 2 ou Liste 3) votre code détecte une nouvelle valeur et l’ajoute à la liste y relative. Je vous suggère de neutraliser les actions sur la ligne de titre avec cette instruction:
    If Target.Row = 1 Then Exit Sub ' Ligne des titres, rien à faire
    Bonne fin de journée
    0
    1. Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   5 147
       
      Je n'ai pas testé dans les moindres détails, il est possible qu'il y ai d'autres anomalies, mais entre tous, nous pouvons céer un module nickel pour le présenter sur le forum.
      Merci pour l'info ou la rectification si vous le souhaitez ainsi qu'intégrer un filtre des listes.

      Je n'ai pas regardé votre code, simplement testé les saisies.
      Tout marche nickel sauf colonne A des prénom, lorsque je saisie une nouvelle donnée après la msgbox de confirmation erreur 438. Alors que le dernier envoi dont le module est verrouillé aucun problème !

      Je regarderai demain

      Bonne soirée
      0
      1. Le Pingou Messages postés 12274 Date d'inscription   Statut Contributeur Dernière intervention   1 476 > Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention  
         
        Bonjour Mike-31,
        J'ai l'impression que vous n'avez pas le bon fichier, s'il vous plait, prennez cette version : https://www.cjoint.com/?lxvRdvxZug
        Merci.
        0
  10. Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   5 147
     
    Salut Le Pingou,

    Je viens de jeter un oeil rapide sur vos fichiers, qui sont les même et présente le même problème qui vient de la macro

    Sub TrierA_Z(collist, plalist)

    Je regarderai le code demain

    Bonne nuit
    0
    1. Le Pingou Messages postés 12274 Date d'inscription   Statut Contributeur Dernière intervention   1 476
       
      Merci Mike-31.
      Voir le MP.
      Je travail avec MSO 2007, c'est peut être là que se cache le problème avec la macro.
      Je vais voir cela sur mon autre machine.
      0
  11. Le Pingou Messages postés 12274 Date d'inscription   Statut Contributeur Dernière intervention   1 476
     
    Bonjour Mike-31,
    L'erreur 438 que vous m'avez signalée se produit à cause de la méthode que j'ai utilisée pour écrire le code de tri avec MSO 2007, il n'est pas supporté par les versions antérieures.
    Voici le fichier mis à jour : https://www.cjoint.com/?lyi11qoaQ4
    0
  12. Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   5 147
     
    Salut Le Pingou,

    Excuses du retard, quelques problèmes de la vie à gérer.

    J'ai ouvert ton nouveau fichier qui fonctionne bien. Je n'ai pas encore regardé ton code ainsi que le mien d'ailleurs.
    Si tu le permets je vais faire le fainéant et m’inspirer de ta macro pour trier mes colonnes. Je vais également revoir mon code qui actuellement fonctionne sur les trois premières colonnes A, B et C mais il serait bon de choisir ses colonnes exemple la A, la F etc…

    Dés que j’ai un moment je vois ça et ne manquerai pas de la mettre mon fichier sur le Forum ne serai ce que pour avoir des avis ou des corrections éventuelles afin que le code fonctionne sur tous les PC

    A+
    0
  13. JOLARITALE Messages postés 149 Statut Membre 4
     
    Bonjour,
    Je crois que j'ai un peu deserté le forum ces quelques mois derniers...
    J'ai bien lu toute vos réponses...
    et vous remercie de m'etre venue en aide...
    mais je reste une néophite et la c'est pas mal précis comme données...

    Je vais d'abord tout relire essayé d'en comprendre autant que possible... et ensuite essayé de poser des questions uassi préciser que vos postes...

    Par contre je suis Madame Jolaritale et non pas Monsieur hihi

    Merci
    0
  14. Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   5 147
     
    Bonjour Maaadame, Salut Le Pingou,

    Ah Monsieur est une Dame, ça va faire sourire Le Pingou (post 13)

    ceci,mis à part, si tu as du mal avec le VBA tu peux toujours mettre ton fichier s'il ne contient pas de notes confidentielles sur le forum, avec ce lien

    https://www.cjoint.com/

    et essayera avec de faire quelque chose pour Madame

    A+
    0