Données cbbox exact

Résolu/Fermé
GermPeru Messages postés 172 Date d'inscription mercredi 7 décembre 2016 Statut Membre Dernière intervention 27 mars 2018 - Modifié par pijaku le 2/01/2017 à 10:05
GermPeru Messages postés 172 Date d'inscription mercredi 7 décembre 2016 Statut Membre Dernière intervention 27 mars 2018 - 29 déc. 2016 à 23:21
Bonjour,

J'ai un useform, les données de mes txtbox se charge directement depuis les résultats obtenu depuis une cbbox qui va chercher mes possibilités dans un tableau du classeur.
J'aimerais limiter mes choix dans ma cbobox seulement aux posibilités du tableau, et sans que s'affiche les données dans mes txtbox sans que le resultat de la cbbox soit exact.

mon code:



Private Sub UserForm_Initialize()
    'selection aprobado a l initialisacion du userform
    CbResultado.Value = "APROBADO"

' selection de la feuille et des parametres du tableau
    Set f = Sheets("Datos aprobados")
    choix1 = Application.Transpose(f.Range("d2:d" & f.[d65000].End(xlUp).Row).Value)
    Me.CbNAnalisis.List = choix1
    Me.CbNAnalisis.SetFocus

End Sub

Private Sub CbNAnalisis_Change()

If Me.CbNAnalisis.ListIndex = -1 And IsError(Application.Match(Me.CbNAnalisis, choix1, 0)) Then
   Me.CbNAnalisis.List = Filter(choix1, Me.CbNAnalisis.Text, True, vbTextCompare)
   Me.CbNAnalisis.DropDown
  Else
    CbNAnalisis_Click
  End If
End Sub


'recupere les champs ds l userform
Private Sub CbNAnalisis_Click()
  Set c = f.[D:D].Find(what:=Me.CbNAnalisis)
    If Not c Is Nothing Then
    Me.TxtIDProducto = f.Cells(c.Row, 2)
    Me.TxtProducto = f.Cells(c.Row, 3)
    Me.TxtFVencimiento = f.Cells(c.Row, 11)
    Me.TxtFAnalisis = f.Cells(c.Row, 18)
    Me.TxtFReAnalisis = f.Cells(c.Row, 18)
    Me.TxtPotencia = f.Cells(c.Row, 20)
    Me.TxtBulto = f.Cells(c.Row, 21)
    Me.TxtHumedad = f.Cells(c.Row, 22)
    Me.TxtCodigoBarra = Me.CbNAnalisis.Value & Mid(f.Cells(c.Row, 2), 4, 5)
  End If
End Sub

1 réponse

yg_be Messages postés 22697 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 18 avril 2024 1 471
29 déc. 2016 à 19:40
bonsoir. tu as une question?
0
GermPeru Messages postés 172 Date d'inscription mercredi 7 décembre 2016 Statut Membre Dernière intervention 27 mars 2018
29 déc. 2016 à 20:16
Si! Lorsque par exemple je tape un numero ds ma cbbox qui n'est pas dans tableau il va quand meme me charger des valeurs dans les text box et j'aimerais qu il me charge les valeur uniquement lorsque la valeur de ma combo est un un numero present dans mon tableau.
J'espere que cela te parrait un peu plus clair car je ne savais pas trop comment l'expliquer...
0
yg_be Messages postés 22697 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 18 avril 2024 1 471
29 déc. 2016 à 20:43
c'est pour cela que tu fais
Set c = f.[D:D].Find(what:=Me.CbNAnalisis) 
, tu veux vérifier que Me.CbNAnalisis est présent dans f.[D:D]?
0
GermPeru Messages postés 172 Date d'inscription mercredi 7 décembre 2016 Statut Membre Dernière intervention 27 mars 2018
29 déc. 2016 à 20:46
si, il va me chercher les possibilités mais il ne me les bloque pas, je peux rentrer un autre numero et il va quand meme me donner des valeurs dans mes txtbox
0
yg_be Messages postés 22697 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 18 avril 2024 1 471
29 déc. 2016 à 21:16
Qu'est-ce qui s'affiche dans les txtbox quand un autre numéro est choisi?
Dans quel tableau du classeur vas-tu chercher tes possibilités?
0
GermPeru Messages postés 172 Date d'inscription mercredi 7 décembre 2016 Statut Membre Dernière intervention 27 mars 2018
29 déc. 2016 à 21:21
colone D feuille "datos aprobados", si j'écris "2", ds les txtbox il va me mettre les données correspondant a la ligne du premier numero commencant par un "2" ds la colone D, et si je rentre un numero qui n existe pas bah ds mes txtbox il va me garde les premieres données qu il ma donné...
0