Affichage par défaut dans liste déroulante

Bonjour,

Sur une liste déroulante (cellule C5) de plusieurs dizaines de noms, je cherche à afficher par défaut un nom en particulier "Client" qui est utilisé dans 90% du temps.

Si j'ai besoin d'un autre nom, je le cherche dans la liste et je l'affiche, mais après usage, le nom "Client" doit réapparaitre.

Y aurait-il une solution simple à cette demande ?

Merci pour votre collaboration et bonne journée.

Cordialement

Fat

Bonjour

IL suffit que ce client soit en 1er dans la source de la liste déroulante ou alors je n'ai pas compris

Re,

Je cherche un affichage permanent du nom "Client", et même s'il est en 1ère position, il ne s'affiche pas tout seul. Il faut que j'aille le chercher à chaque opération.

Avec une centaine d'opérations par jour, ça devient laborieux puisque j'en ai besoin 9 fois sur 10.

Cordialement

Bonjour à tous,

Voici un essai avec ce code à copier dans le module de la feuille concernée, où A1 (à adapter) est une cellule sur laquelle vous mettez le nom du fameux client pour éviter d'aller le chercher (alors C5 copie la valeur de A1) ou autre chose pour ne pas avoir de valeur en C5.

Il sera possible de modifier le code si le besoin évolue...

private sub worksheet_change(byval target as range)

dim r as range: set r = intersect(target, range("A1")) '<<< adapter à cellule voulue

if not r is nothing then
    if r.value = "nomdufameuxclient" then
        range("C5").value = r.value
    else
        range("C5").value = ""
    end if
end if

end sub

Cdlt,

Salut Fat,
Salut les as,

comme je comprends l'affaire :
- en cliquant dans [C5], le nom du client "préféré", obligatoirement renseigné en haut de la liste de données (ici, en [A1] ), s'affiche directement ;
- la liste de validation se crée dans la foulée pour permettre un autre choix.

Á ce que je saisis de ton fonctionnement, il est même sans doute inutile d'intégrer ce client "préféré" dans la liste, d'ailleurs... Non ?

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
'
If Not Intersect(Target, Range("C5")) Is Nothing Then
    Target = [A1]
    With Target.Validation
        .Delete
        .Add Type:=xlValidateList, Formula1:="=A1:A" & Range("A" & Rows.Count).End(xlUp).Row
    End With
End If
'
End Sub
12fat.xlsm (14.07 Ko)


A+

Salut Curulis,

C'est une bonne idée ! Et pas besoin de supprimer et rajouter la liste finalement ?...

Cdlt,

Salut 3GB,

quand tu écris...

pas besoin de supprimer et rajouter la liste

... tu penses à ?
- Validation.Delete ;
- Validation.Add

Tu sais, une liste de clients peut évoluer entre 2 clics...


A+

Merci à vous tous pour vos propositions.

Rechercher des sujets similaires à "affichage defaut liste deroulante"