Excel 2003 - macro - ajout de cellule sous co

Fermé
JOLARITALE Messages postés 144 Date d'inscription dimanche 20 août 2006 Statut Membre Dernière intervention 10 décembre 2014 - 1 sept. 2008 à 10:12
Mike-31 Messages postés 18313 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 21 avril 2024 - 17 déc. 2008 à 11:50
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 144 Date d'inscription dimanche 20 août 2006 Statut Membre Dernière intervention 10 décembre 2014 4
20 nov. 2008 à 08:59
Ca n'a pas l'aire d'avoir inspiré grand monde...
0
Le Pingou Messages postés 12042 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 24 avril 2024 1 426
20 nov. 2008 à 16:51
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 144 Date d'inscription dimanche 20 août 2006 Statut Membre Dernière intervention 10 décembre 2014 4
21 nov. 2008 à 10:06
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 12042 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 24 avril 2024 1 426
21 nov. 2008 à 13:55
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 12042 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 24 avril 2024 1 426
21 nov. 2008 à 16:59
Bonjour JOLARITALE,
Ci-joint un exemple : https://www.cjoint.com/?lvq2YZdRGa
0
Le Pingou Messages postés 12042 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 24 avril 2024 1 426
21 nov. 2008 à 20:20
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 18313 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 21 avril 2024 5 073
21 nov. 2008 à 22:23
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 12042 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 24 avril 2024 1 426 > Mike-31 Messages postés 18313 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 21 avril 2024
21 nov. 2008 à 22:28
Bonjour,
Désolé, Le Pingouin c'est pas moi.
0
Mike-31 Messages postés 18313 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 21 avril 2024 5 073 > Le Pingou Messages postés 12042 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 24 avril 2024
21 nov. 2008 à 22:34
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 12042 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 24 avril 2024 1 426 > Mike-31 Messages postés 18313 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 21 avril 2024
21 nov. 2008 à 22:45
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 18313 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 21 avril 2024 5 073 > Le Pingou Messages postés 12042 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 24 avril 2024
21 nov. 2008 à 22:46
Salut Jean Pierre,

J'aime mieux ça

Bonne soirée
0
Mike-31 Messages postés 18313 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 21 avril 2024 5 073
22 nov. 2008 à 21:49
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 12042 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 24 avril 2024 1 426
22 nov. 2008 à 22:00
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 18313 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 21 avril 2024 5 073
23 nov. 2008 à 15:25
Salut,

Comme promis un autre exemple sur ce lien

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


A+
0
Le Pingou Messages postés 12042 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 24 avril 2024 1 426
23 nov. 2008 à 16:58
Bonjour Mike-31,
C'est domage que vous n'avez pas intégré le tri.
0
Mike-31 Messages postés 18313 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 21 avril 2024 5 073
23 nov. 2008 à 17:01
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 12042 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 24 avril 2024 1 426 > Mike-31 Messages postés 18313 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 21 avril 2024
23 nov. 2008 à 18:10
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 12042 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 24 avril 2024 1 426
23 nov. 2008 à 18:53
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 18313 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 21 avril 2024 5 073
23 nov. 2008 à 19:06
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 12042 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 24 avril 2024 1 426 > Mike-31 Messages postés 18313 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 21 avril 2024
23 nov. 2008 à 21:47
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 18313 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 21 avril 2024 5 073
23 nov. 2008 à 23:12
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 12042 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 24 avril 2024 1 426
23 nov. 2008 à 23:18
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 12042 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 24 avril 2024 1 426
24 nov. 2008 à 08:57
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 18313 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 21 avril 2024 5 073
24 nov. 2008 à 17:19
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 144 Date d'inscription dimanche 20 août 2006 Statut Membre Dernière intervention 10 décembre 2014 4
17 déc. 2008 à 10:33
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 18313 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 21 avril 2024 5 073
17 déc. 2008 à 11:50
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