Bonjour, je débute dans le langage VBA , j'utilise Excel 97 et essaye de créer une macro qui permet de rechercher des données dans un tableau et les inscrit dans un formulaire UserForm.
Pour cela j'ai essayé d'utiliser la fonction Hlookup, le programme fonctionne partiellement. Vous pourrez ouvrir le fichier joint pour mieux comprendre le problème. (lorsque l'on saisi un poids pour un colis quelconque, les prix sont bien restitués lorsque le poids du colis est compris entre 11 et 99 kg mais lorsque son poids est inférieur, les prix restitués ne sont pas les bons, ils sont pris dans une mauvaise colonne ! je ne comprends pas pourquoi !
Voici le code utilisé :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 Private Sub CommandButton2_Click() If UserForm1.TextBox12.Value = "" Then MsgBox "Veuillez saisir le poids du colis !", vbOKOnly, "Erreur" Else TextBox4 = "" TextBox6 = "" TextBox8 = "" TextBox10 = "" TextBox14 = "" 'If UserForm1.TextBox12.Value = Feuil2.Cells(Feuil2.Range("c25:cy32").Find(UserForm1.TextBox12).Row, 1) Then TextBox4 = Application.WorksheetFunction.HLookup(UserForm1.TextBox12, Worksheets(2).Range("c25:cy32"), 3) TextBox6 = Application.WorksheetFunction.HLookup(UserForm1.TextBox12, Worksheets(2).Range("c25:cy32"), 7) TextBox8 = Application.WorksheetFunction.HLookup(UserForm1.TextBox12, Worksheets(2).Range("c25:cy32"), 6) TextBox10 = Application.WorksheetFunction.HLookup(UserForm1.TextBox12, Worksheets(2).Range("c25:cy32"), 4) TextBox14 = Application.WorksheetFunction.HLookup(UserForm1.TextBox12, Worksheets(2).Range("c25:cy32"), 8) End If End Sub
tous vos conseils seront les bienvenus ! merci d'avance à tous ceux qui me répondront.
Partager