liste déroulante, saisie semi-automatique

Rachelle

XLDnaute Nouveau
Bonjour !
Je n’est jamais utilisé Excel avant cette semaine. J’ai actuellement en charge de taper tous les devis de ma nouvelle boite, et je veux faire bonne impression!
Je souhaite, dans ma première colonne “descriptif appareillage” pouvoir taper les premières lettres des mots et cliquer sur la suggestion qui me conviens, et par la même en avoir le prix.
J’ai donc sur ma feuille 2, listé tous les appareillages (avec la typo et les couleurs que je souhaites conserver) et en face les prix correspondant.
Avec une formule =RECHERCHEV(B14;tableau_devis;5;0) j’ai réussi à faire apparaitre sur ma feuille 1 une liste déroulante et lier les prix, mais la liste est tellement longue que j’ai du mal à m’y retrouver, et la typographie n’est pas respectée.
J’ai essayé d’y arriver par plusieurs tuto, mais je suis au bout de mes capacités actuel...!
Merci par avance de vos suggestions !
 

Pièces jointes

  • FABRICATION DEVIS.xlsx
    24.1 KB · Affichages: 17

BOISGONTIER

XLDnaute Barbatruc
Repose en paix
Bonjour,

Saisie intuitive combobox
On peut frapper un ou plusieurs mots contenus dans le libellé cherché (mult pri e.g. pour prise multimédia)

VB:
Dim Choix1()
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
  If Not Intersect([B13:B73], Target) Is Nothing And Target.Count = 1 Then
    Set f = Sheets("parametres")
    Set Rng = f.Range("M2:M" & f.[M65000].End(xlUp).Row)
    Choix1 = Application.Transpose(Rng)
    Me.ComboBox1.List = Choix1
    Me.ComboBox1.Height = Target.Height + 3
    Me.ComboBox1.Width = Target.Width
    Me.ComboBox1.Top = Target.Top
    Me.ComboBox1.Left = Target.Left
    Me.ComboBox1 = Target
    Me.ComboBox1.Visible = True
    Me.ComboBox1.Activate
  Else
    Me.ComboBox1.Visible = False
  End If
End Sub

Private Sub ComboBox1_Change()
If Me.ComboBox1 <> "" Then
     mots = Split(Trim(Me.ComboBox1), " ")
     Tbl = Choix1
     For i = LBound(mots) To UBound(mots)
       Tbl = Filter(Tbl, mots(i), True, vbTextCompare)
     Next i
     Me.ComboBox1.List = Tbl
     Me.ComboBox1.DropDown
End If
End Sub

Private Sub ComboBox1_click()
   ActiveCell.Value = Me.ComboBox1
End Sub

Boisgontier
 

Pièces jointes

  • Copie de FABRICATION DEVIS.xlsm
    39 KB · Affichages: 69
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
312 103
Messages
2 085 321
Membres
102 862
dernier inscrit
Emma35400