Liste déroulante avec retour formule
fireweb
Messages postés
202
Statut
Membre
-
fireweb Messages postés 202 Statut Membre -
fireweb Messages postés 202 Statut Membre -
Bonjour,
J'ai une case qui contient une formule qui est :
A cette case je voudrais intégrer une liste déroulante avec comme choix :
*vide*
CP
AM
MAT
Le problème est que quand je vais faire un choix dans cette liste, ma case va être remplacée par une des valeurs de la liste ( ce qui est normal ). Je voudrais faire en sorte que lorsque je prend le premier choix ( choix vide ) je puisse pointer sur ma formule d'origine.
--
J'ai une case qui contient une formule qui est :
=SI(D5=donnees!$A$3;donnees!B$3;SI(D5=donnees!$A$6;donnees!B$6;SI(D5=donnees!$A$9;donnees!B$9;SI(D5=donnees!$A$13;donnees!B$13;SI(D5=donnees!$A$16;donnees!B$16;SI(D5=donnees!$A$19;donnees!B$19;SI(D5=donnees!$A$22;donnees!B$22;SI(D5=donnees!$A$25;donnees!B$25;SI(D5=donnees!$A$28;donnees!B$28;SI(D5=donnees!$A$31;donnees!B$31;))))))))))
A cette case je voudrais intégrer une liste déroulante avec comme choix :
*vide*
CP
AM
MAT
Le problème est que quand je vais faire un choix dans cette liste, ma case va être remplacée par une des valeurs de la liste ( ce qui est normal ). Je voudrais faire en sorte que lorsque je prend le premier choix ( choix vide ) je puisse pointer sur ma formule d'origine.
--
A voir également:
- Liste déroulante avec retour formule
- Liste déroulante excel - Guide
- Liste déroulante en cascade - Guide
- Formule si ou - Guide
- Retour à la ligne excel formule - Guide
- Formule moyenne excel plusieurs colonnes - Guide
2 réponses
RachelMartel
Messages postés
460
Statut
Membre
25
Ah non, il met juste le résultat de la formule...
fireweb
Messages postés
202
Statut
Membre
79
oui c'est dommage
Bonjour,
je t'avais tapé ça mais ça a disparu... c'est reparti du coup ^^
On va admettre que :
ta formule est en A1
A2 est une cellule que tu n'utilise pas et qui ne sera JAMAIS utilisée ^^ (tu pourra la changer par une autre cellule, il faudra juste la remplacer dans le code.)
tu remplacera ces coordonnées par celles qui conviendront a ton fichier
dans l'onglet formulaire, tu va créer une liste déroulante ( n'utilise pas la validation de données)
tu dessine ta liste, puis tu fais clic droit, format de contrôle.
Plage d'entrée : sélectionne la zone où tu a mis ta liste, ou met le nom de ta liste si tu l'a nommée. attention, n'oublie pas de prendre une case pour le "vide", et de bien mettre dans le même ordre que celui que tu a donné plus haut
Cellule liée : =A2
puis tu fais a nouveau clic droit sur la liste, affecter une macro, et tu créé une nouvelle macro avec le code:
voila, normalement ça devrait marcher, tu n'a plus qu'a déplacer ta liste déroulante a l'endroit qui t'arrange (n'oublie pas d'affecter la macro après l'avoir créée).
si tu a d'autres question n'hésite pas
je t'avais tapé ça mais ça a disparu... c'est reparti du coup ^^
On va admettre que :
ta formule est en A1
A2 est une cellule que tu n'utilise pas et qui ne sera JAMAIS utilisée ^^ (tu pourra la changer par une autre cellule, il faudra juste la remplacer dans le code.)
tu remplacera ces coordonnées par celles qui conviendront a ton fichier
dans l'onglet formulaire, tu va créer une liste déroulante ( n'utilise pas la validation de données)
tu dessine ta liste, puis tu fais clic droit, format de contrôle.
Plage d'entrée : sélectionne la zone où tu a mis ta liste, ou met le nom de ta liste si tu l'a nommée. attention, n'oublie pas de prendre une case pour le "vide", et de bien mettre dans le même ordre que celui que tu a donné plus haut
Cellule liée : =A2
puis tu fais a nouveau clic droit sur la liste, affecter une macro, et tu créé une nouvelle macro avec le code:
Sub liste()
if sheets("nomdetafeuille").range("A2").value = 1 then
sheets("nomdetafeuille").range("A1").value = "=SI(D5=donnees!$A$3;donnees!B$3;SI(D5=donnees!$A$6;donnees!B$6;SI(D5=donnees!$A$9;donnees!B$9;SI(D5=donnees!$A$13;donnees!B$13;SI(D5=donnees!$A$16;donnees!B$16;SI(D5=donnees!$A$19;donnees!B$19;SI(D5=donnees!$A$22;donnees!B$22;SI(D5=donnees!$A$25;donnees!B$25;SI(D5=donnees!$A$28;donnees!B$28;SI(D5=donnees!$A$31;donnees!B$31;))))))))))"
Else
if sheets("nomdetafeuille").range("A2").value = 2 then
sheets("nomdetafeuille").range("A1").value = "CP"
Else
if sheets("nomdetafeuille").range("A2").value = 3 then
sheets("nomdetafeuille").range("A1").value = "AM"
Else
sheets("nomdetafeuille").range("A1").value = "MAT"
end if
end if
end if
end sub
voila, normalement ça devrait marcher, tu n'a plus qu'a déplacer ta liste déroulante a l'endroit qui t'arrange (n'oublie pas d'affecter la macro après l'avoir créée).
si tu a d'autres question n'hésite pas