vlookup via combobox, un truc de fou

vlookup via combobox, un truc de fou - VB/VBA/VBS - Programmation

Marsh Posté le 17-03-2006 à 20:28:04    

Un truc de fou, j’y comprends rien, deux problèmes de fou.
Avant tout, ce que je souhaite.
Faire un convertiseur d’unité (pouce, mm)
J’ai donc placé deux boutons, option1 et 2
Puis suivant l’option je remplis une combobox puis j’effectue un vlookup.
 
Pour optionbutton1 cela fonctionne très bien mais pour l’option deux, j’ai un décalage d’un rang et je comprends pas pourquoi
 
 Ex
Aa a1
BB b2
Cc  C3
Lorsqu je tape a1 j’ai rien puis en b2 je trouve Aa ???
 
Mon deuxième problème viens lorsque je remplace aa a1 etc par les vrais valeurs
¼  20 x 27
1 26 x 34
4 102 x 114
dans ce cas les resultats sont délirants, j’ai beau avoir remplis les valeurs avec = « ¼ » comme du texte cela continue de ma donner des resultats erronés
 
je trouve vraiment pas de solution.
Si quelqu’un y comprend quelque chose voici en tous les cas mon programme
 
A+ merci bien
 
 
Private Sub OptionButton1_Click()
Dim v As String
With usf1
If OptionButton1 = True Then
li = 2
.ComboBox1.Clear
            For i = 2 To 14
            v = Sheets("feuil4" ).Range("b1" ).Offset(i, 0).Value
            .ComboBox1.AddItem v
            Next
            ComboBox1.ListIndex = -1
End If
 
          End With
End Sub
Private Sub OptionButton2_Click()
Dim v As String
li = 1
If OptionButton2 = True Then
With usf1
usf1.ComboBox1.Clear
           For i = 2 To 14
            v = Sheets("feuil4" ).Range("c1" ).Offset(i, 0).Value
         .ComboBox1.AddItem v
        Next
        ComboBox1.ListIndex = -1
End With
End If
End Sub
 
Private Sub ComboBox1_change()
If OptionButton1 = True Then
vlookup1
Else
vlookup1
End If
End Sub
Private Sub vlookup1()
Dim myquestion, rep As String
Dim Plage As Range
 
myquestion = usf1.ComboBox1
 
Set Plage = Sheets("Feuil4" ).Range("b3:c14" )
 
On Error GoTo pas_de_result
    rep = Application.WorksheetFunction.vlookup(myquestion, Plage, li)
     
    usf1.TextBox5 = rep
  Exit Sub
   
pas_de_result:
TextBox5.Value = "pas de résultat"
End Sub
 
quelqu'un est arrivé au bout
 
bon en tous les cas, ne vous formalisez pas trop sur le style vba, je debute depuis 1 mois maintenant!
 
tchao
 

Reply

Marsh Posté le 17-03-2006 à 20:28:04   

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed