Mise à jour d'élément provenant d'une liste déroulante
marine
-
f894009 Messages postés 17277 Date d'inscription Statut Membre Dernière intervention -
f894009 Messages postés 17277 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Voila mon problème :
(Les feuilles et cellules sont données à titre d'exemple)
J'ai des listes déroulante (feuille 1, A1) avec comme source une plage nommé "fonction" (Feuille 2, A1:A4) --> liste insérer par marco Type: xlValidationList
Lorsque je change une donnée de ma plage, la liste de choix est mise à jour automatiquement... jusque la, pas de problème.
Mettons je choisie la fonction "Directeur", j'ai donc "Directeur" qui s'affiche en feuille1, A1.
Maintenant, je remplace dans la feuille 2 "Directeur" par "Directeur tartampion".
Ma liste de choix déroulante est donc mise à jour, mais pas ma selection en feuille 1, A1. Je suis obligée de RE-selectionner mon choix et je voudrais que la cellule se mette automatique à jour si modification dans la plage de donnée et cela après qu'une sélection est été faite.
J'espère que c'est à peu près clair...
Merci d'avance
Voila mon problème :
(Les feuilles et cellules sont données à titre d'exemple)
J'ai des listes déroulante (feuille 1, A1) avec comme source une plage nommé "fonction" (Feuille 2, A1:A4) --> liste insérer par marco Type: xlValidationList
Lorsque je change une donnée de ma plage, la liste de choix est mise à jour automatiquement... jusque la, pas de problème.
Mettons je choisie la fonction "Directeur", j'ai donc "Directeur" qui s'affiche en feuille1, A1.
Maintenant, je remplace dans la feuille 2 "Directeur" par "Directeur tartampion".
Ma liste de choix déroulante est donc mise à jour, mais pas ma selection en feuille 1, A1. Je suis obligée de RE-selectionner mon choix et je voudrais que la cellule se mette automatique à jour si modification dans la plage de donnée et cela après qu'une sélection est été faite.
J'espère que c'est à peu près clair...
Merci d'avance
A voir également:
- Mise à jour d'élément provenant d'une liste déroulante
- Liste déroulante excel - Guide
- Mise a jour chrome - Accueil - Applications & Logiciels
- Mise a jour windows 10 - Accueil - Mise à jour
- Liste déroulante en cascade - Guide
- Mise a jour chromecast - Accueil - Guide TV et vidéo
3 réponses
Bonjour,
Maintenant, je remplace dans la feuille 2 "Directeur" par "Directeur tartampion". ce n'est plus une fonction mais une personne. Vous faites le changement combien de fois par heures????
Maintenant, je remplace dans la feuille 2 "Directeur" par "Directeur tartampion". ce n'est plus une fonction mais une personne. Vous faites le changement combien de fois par heures????
Merci Marine! J'ai actuellement le même problème que toi mais je n'arrive pas à le resoudre. J'ai copié ton code dans la feuille où est située la plage de données et rien se passe. Est-ce que tu pourrais mettre ton fichier ici pour que je puisse le prendre comme exemple?
Merci d'avance
Merci d'avance
mon ficher puisqu'il est confidentiel, il faudrait donc que je le transforme pour le mettre à disposition et cela prend un peu de temps.
En attendant, tu peux peut être mettre le tiens et je regarderais.
Pour information : La procédure inscrite dans une feuille est automatique, tu ne "vois" donc pas forcement si elle fonctionne ou pas sauf si tu change tes valeurs.
J'essaye de modifier mon fichier dans le week end et d'expliciter les codes.
En attendant, tu peux peut être mettre le tiens et je regarderais.
Pour information : La procédure inscrite dans une feuille est automatique, tu ne "vois" donc pas forcement si elle fonctionne ou pas sauf si tu change tes valeurs.
J'essaye de modifier mon fichier dans le week end et d'expliciter les codes.
Bonjour,
pour mettre un fichier a dispo cliquez sur le lien suivant https://www.cjoint.com/
n'oubliez pas de copier/coller le lien cree sur votre prochain message
pour mettre un fichier a dispo cliquez sur le lien suivant https://www.cjoint.com/
n'oubliez pas de copier/coller le lien cree sur votre prochain message
La fréquence des changements est variable... Mais j'ai réussi après nombreuses recherches à trouver ce que je voulais grâce au code suivant :
1- Définir un nom pour la liste de choix déroulant (Dans le code ci-dessous, le nom est "Fonction")
2- Le code est à inserer dans la feuille où est située la plage de donnée du nom
3- La boucle For Each In est suivi du nom de la feuille où les listes sont situées (Ici : "MPAOT")
' Procédure qui actualise toutes les valeurs des fonctions dans la feuille "MPAOT" choisies grâce à une liste déroulante
'Est utile en cas de changement de nom de fonction
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect([Fonction], Target) Is Nothing Then
Application.EnableEvents = False
valSaisie = Target.Value
Application.Undo
For Each c In Sheets("MPAOT").Cells.SpecialCells(xlCellTypeAllValidation)
If c.Value = Target Then c.Value = valSaisie
Next
Target = valSaisie
Application.EnableEvents = True
End If
End Sub
Pour ceux que ça intéresse....
Merci en tout cas pour votre attention et votre réponse.
J'aurais une autre question éventuellement :
Comment faire une boucle sur des lignes filtrées?
Exemple :
Selection.AutoFilter Field:=6, Criteria1:="P"
For i=2 To NbLignes
.....
ActiveCell.Formula = _
"=INDEX(Fonctions!A2:A200,MATCH(MPAOT!I" & i & ",Fonctions!B2:B200,0))"
Next i
une facon de faire avec filtre:
'
'
'
'
Probleme: dans votre boucle d'origine il y a i pour la formule, j'ai mis ligne.row, mais a vous de voir ce qu'il vous faut.