Chercher le contenu d'une ComboBox dans un tableau

Bonjour à tous,

Je galère vraiment sur un code. Pourtant il semble avoir fonctionné. Mais j'ai utilisé mon fichier aujourd'hui et plus rien ne va ....

Je suis désolé de ne pas vous proposer de fichier il est vraiment trop lourd et c'est une vrai usine à gaz ... Je vais essayer d'être clair.

En feuille 1 ("Gestion Ingrédients") : j'ai un tableau proposant :

  • une liste de noms d'ingrédients en Colonne E
  • une quantité utilisée en Colonne K

En feuille 2 ("Gestion Produits") : j'ai une Userform qui une propose :

  • une combobox (ComboBoxingredient_1) qui contient les noms d'ingrédients de la colonne E de la feuille 1
  • Une textebox (TextDOSAGE_1) où on peut préciser une quantité d'ingrédients utilisés

(La Userform est en Feuill 2 car elle alimente en même temps un tableau de cette même feuille)

L'idée est d'ajouter la valeur de cette TextBox à la bonne cellule de la colonne K , celle qui correspond au nom de la Combobox

Voici la partie de mon code qui semble poser problème car aucune valeur n'est ajoutée dans la colonne K :

'Ingredient 1 ****************

Dim DOSAGE_1 As Double

If TextDOSAGE_1.Value <> "" Then
DOSAGE_1 = CDbl(Me.TextDOSAGE_1.Value)

Dim c1 As Range 'variable c comme cellule ingrédient 1

Sheets("Gestion Ingrédients").Activate 'travailler sur la feuille Gestion Ingrédients

Set c1 = Sheets("Gestion Ingrédients").Range("E:E").Find(What:=Me.ComboBoxingredient_1.Value, LookIn:=xlValues, LookAt:=xlWhole, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=True, SearchFormat:=False) 'chercher la valeur de la combobox dans la colonne E
If c1 Is Nothing Then
GoTo Fin
Else
c1.Offset(0, 6).Value = c1.Offset(0, 6).Value + DOSAGE_1 'retirer la valeur de la combobox en décalant de 6
End If

J'ai remplacer le GoTo Fin par MsgBox "pas trouvé"

Et effectivement ma MsgBox s'affiche.

Donc il ne trouve pas le nom en colonne E alors qu'il est bien proposé.

Est-ce que je fais une erreur dans l'écriture de mon code ?

Merci d'avance pour votre aide.

Bonsoir,

avez vous essayé en simplifiant le test ?

Set c1 = Sheets("Gestion Ingrédients").Range("E:E").Find(What:=Me.ComboBoxingredient_1.Value,LookAt:=xlWhole)

LookAt:=xlWhole demande une recherche exacte, de mémoire, la casse est-elle la même ?

Est ce que votre recherche est numérique ? Sinon essayez de mettre Me.ComboBoxingredient_1.Value*1 pour la recherche.

@ bientôt

LouReeD

Bonjour,

vu que LookAt:=xlWhole les mots doivent être identique pour que la recherche soit ok.

Merci pour vos réponses,

Je viens de trouver la solution à mon problème ...

Je vais surement avoir l'air bête ... mais bon ça servira pet-être à d'autre.

En fait, ce qui pose problème, c'est que j'avais masquer la colonne E .... et apparemment, ça bloque le code .... je ne le savais pas.

En affichant ma colonne, ça refonctionne.

Désolé de vous avoir embêté pour rien

Pour info trouver sur le Net :

By default, the Find Method wont look in hidden columns/rows. Use LookIn:=xlFormulas instead of LookIn:=xlValues to overcome this.

Qui veut dire :

Par défaut, la méthode Find ne regarde pas dans les colonnes / lignes cachées. Utilisez LookIn: = xlFormulas au lieu de LookIn: = xlValues ​​pour résoudre ce problème.

Comme cela si votre colonne doit être masquée...

Merci de votre retour.

@ bientôt

LouReeD

Rechercher des sujets similaires à "chercher contenu combobox tableau"