probleme liste deroulante avec saisie auto et condition

Ganesh44

XLDnaute Nouveau
Bonjour tout le monde

Je débute un peu sous VB et j'ai quelques souci, je m'explique.
J'ai un fichier avec deux feuilles (devis et matériel)Dans la feuille devis sur la colonne A un j'ai des chiffres de 1 à 6. Sur la colonne B (appelé code) j'ai ma liste de choix. J'ai commencer mon code en disant de mettre une liste de choix que lorsque en colonne A il trouve sur une ligne un 3 qui me mettre une liste de choix lié à la feuille matériel colonne A(appelle ref)a cote de la ligne ou il trouve le 3 en colonne B (Je sais pas si c'est très clair). La dessus pas de problème mon code marche si je cherche juste à mettre une liste de choix.
Next
Columns("B:B").Select
For Each lig In Selection.Rows
If Range(Cells(lig.Row, 1), Cells(lig.Row, 1)).Value = 3 Then
Range(Cells(lig.Row, 2), Cells(lig.Row, 2)).Select
With Selection.Validation
.Delete
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:="=ref"
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = ""
.InputMessage = ""
.ErrorMessage = ""
.ShowInput = True
.ShowError = False
End With
End If
Par contre ca se corse quand je veux mettre la saisie auto

dans nom > definir j'ai rentrer la formule suivante pour ma colonne A dans la feuille matériel =DECALER(Materiel!$A$2;0;0;NBVAL(Materiel!$A:$A)-1;1)

Par contre quand je rentre ma formule a la place de xlBetween, Formula1:="=ref" je mets
xlBetween, Formula1:="=IF(code<>"""";DECALER(Ref;EQUIV(code&""*"";Ref;0)-1;;SOMME((STXT(Ref;1;NBCAR(code))=TEXTE(code;""0""))*1));Ref)" il met des erreurs que j'arrive pas a comprendre alors peut etre que je me suis gourré dans ma formule ou autre chose


Merci pour votre aide
 

Discussions similaires

Réponses
7
Affichages
397

Statistiques des forums

Discussions
312 463
Messages
2 088 625
Membres
103 893
dernier inscrit
FAB59163