Excel 2003 - macro - ajout de cellule sous co

JOLARITALE Messages postés 149 Statut Membre -  
Mike-31 Messages postés 19571 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.
A voir également:

15 réponses

JOLARITALE Messages postés 149 Statut Membre 4
 
Ca n'a pas l'aire d'avoir inspiré grand monde...
0
Le Pingou Messages postés 12656 Date d'inscription   Statut Contributeur Dernière intervention   1 466
 
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
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
Le Pingou Messages postés 12656 Date d'inscription   Statut Contributeur Dernière intervention   1 466
 
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

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Le Pingou Messages postés 12656 Date d'inscription   Statut Contributeur Dernière intervention   1 466
 
Bonjour JOLARITALE,
Ci-joint un exemple : https://www.cjoint.com/?lvq2YZdRGa
0
Le Pingou Messages postés 12656 Date d'inscription   Statut Contributeur Dernière intervention   1 466
 
Bonjour JOLARITALE,
J'ai corrigé une faute dans le code, merci d'utiliser cette version : https://www.cjoint.com/?lvuqXLS2bJ
Bonne découverte.
0
Mike-31 Messages postés 19571 Date d'inscription   Statut Contributeur Dernière intervention   5 139
 
Salut Le Pingouin,

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

A+
0
Le Pingou Messages postés 12656 Date d'inscription   Statut Contributeur Dernière intervention   1 466 > Mike-31 Messages postés 19571 Date d'inscription   Statut Contributeur Dernière intervention  
 
Bonjour,
Désolé, Le Pingouin c'est pas moi.
0
Mike-31 Messages postés 19571 Date d'inscription   Statut Contributeur Dernière intervention   5 139 > Le Pingou Messages postés 12656 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
Le Pingou Messages postés 12656 Date d'inscription   Statut Contributeur Dernière intervention   1 466 > Mike-31 Messages postés 19571 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
Mike-31 Messages postés 19571 Date d'inscription   Statut Contributeur Dernière intervention   5 139 > Le Pingou Messages postés 12656 Date d'inscription   Statut Contributeur Dernière intervention  
 
Salut Jean Pierre,

J'aime mieux ça

Bonne soirée
0
Mike-31 Messages postés 19571 Date d'inscription   Statut Contributeur Dernière intervention   5 139
 
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
Le Pingou Messages postés 12656 Date d'inscription   Statut Contributeur Dernière intervention   1 466
 
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
Mike-31 Messages postés 19571 Date d'inscription   Statut Contributeur Dernière intervention   5 139
 
Salut,

Comme promis un autre exemple sur ce lien

https://www.cjoint.com/?lxpvMB1aEo


A+
0
Le Pingou Messages postés 12656 Date d'inscription   Statut Contributeur Dernière intervention   1 466
 
Bonjour Mike-31,
C'est domage que vous n'avez pas intégré le tri.
0
Mike-31 Messages postés 19571 Date d'inscription   Statut Contributeur Dernière intervention   5 139
 
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
Le Pingou Messages postés 12656 Date d'inscription   Statut Contributeur Dernière intervention   1 466 > Mike-31 Messages postés 19571 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
Le Pingou Messages postés 12656 Date d'inscription   Statut Contributeur Dernière intervention   1 466
 
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
Mike-31 Messages postés 19571 Date d'inscription   Statut Contributeur Dernière intervention   5 139
 
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
Le Pingou Messages postés 12656 Date d'inscription   Statut Contributeur Dernière intervention   1 466 > Mike-31 Messages postés 19571 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
Mike-31 Messages postés 19571 Date d'inscription   Statut Contributeur Dernière intervention   5 139
 
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
Le Pingou Messages postés 12656 Date d'inscription   Statut Contributeur Dernière intervention   1 466
 
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
Le Pingou Messages postés 12656 Date d'inscription   Statut Contributeur Dernière intervention   1 466
 
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
Mike-31 Messages postés 19571 Date d'inscription   Statut Contributeur Dernière intervention   5 139
 
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
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
Mike-31 Messages postés 19571 Date d'inscription   Statut Contributeur Dernière intervention   5 139
 
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