Recherche de valeur avec VBA EXCEL

Résolu
Misticade -  
 Misticade -
Bonjour,

J'ai un doc sous excel avec plein de code postaux (A1 à A1200).
Je souhaite entrer un code postale dans une "inputbox" et rechercher cette valeur dans la colonne A. Si elle est présente boite de dialogue "oui" sinon "non". Voilà en gros mon prblème.

Merci d'avance
Configuration: Windows XP
Firefox 3.0.4

4 réponses

  1. xav3601 Messages postés 3390 Statut Membre 312
     
    Bonjour,
    Alors il te faut creer un userform contant un text box, ensuite ton code associe a cet textbox sera:

    private sub textbox1_change()
    UserForm1.textbox1=UserForm1.textbox1.value
    end sub

    et ensuite tu met un bouton rechercher par exemple avec le code associe:

    private sub rechercher.click()

    'on se place dans la feuille contenant les serveurs en productions
    Sheets(Feuil1.Name).Select
    With Sheets(Feuil1.Name)
    'on recherche le nom du serveur dans la liste
    Set result = Range("A2:A1200").Find(What:=UserForm1.textbox1, LookIn:=xlValues, lookat:=xlWhole)
    If Not result Is Nothing Then
    msgbox("valeur trouvée")
    Else
    msgbox("valeur introuvable")
    End iF

    Voila comme ca ca devrais marcher je pense :=)
    0
    1. Misticade
       
      Re bonjour,
      enfait si je fait une iputbox ou je rentre le code postale que je recher et que je la nomme :
      valeur=inputbox("entrez le code postal")
      et ensuite que je demande de chercher "valeur" comme tu la dit avec tout ça
      private sub rechercher.click()

      'on se place dans la feuille contenant les serveurs en productions
      Sheets(Feuil1.Name).Select
      With Sheets(Feuil1.Name)

      'on recherche le nom du serveur dans la liste

      Set result = Range("A2:A1200").Find(What:="valeur", LookIn:=xlValues, lookat:=xlWhole)
      If Not result Is Nothing Then
      msgbox("valeur trouvée")
      Else
      msgbox("valeur introuvable")
      End iF

      logiquement c bon??
      0
  2. xav3601 Messages postés 3390 Statut Membre 312
     
    Je pense oui.
    Je proposais juste l'intermediaire de la textbox car je trouve l'interface plus "jolie" que celle de l'inputbox, mais le resultat devrais etre le meme :)
    0
    1. Misticade
       
      bon j'essai et je revien si j'ai du mal !! :-) !!

      merci beaucoup!!!
      0
    2. Misticade
       
      Bon je n'y arrive pas donc 'jai repris ton idée et j'ai fait une userform :


      Sub Lance() 'pour lancer la userform
      Load UserForm1
      UserForm1.Show
      End Sub

      Sub textbox1_change()
      UserForm1.TextBox1 = UserForm1.TextBox1.Value
      End Sub

      Private Sub rechercher_click()

      Sheets(Feuil1.Name).Select

      With Sheets(Feuil1.Name)
      Set result = Range("A2:A1200").Find(What:=UserForm1.TextBox1, LookIn:=xlValues, lookat:=xlWhole)

      If Not result Is Nothing Then
      MsgBox ("valeur trouvée")
      Else
      MsgBox ("valeur introuvable")
      End If

      End Sub


      je doit faire une erreur quelque part car quand je clik sur "rechercher" ca ne me donne rien
      0
  3. xav3601 Messages postés 3390 Statut Membre 312
     
    Alors nomalement si ca ne t'affiche rien c'est que tu dois avoir un probleme comme par exemple ton bouton ne s'appel pas rechercher!
    effectue une execution pas a pas pour voir ou ca bloque :)
    0
    1. Misticade
       
      bon je n'arrive pas je vais voir à ma pause je doit avoir un livre et j'ai un collègue qui va peut etre m'aider aussi je te tient au courant, en tout cas merci beaucoup
      0
  4. lermite222 Messages postés 9042 Statut Contributeur 1 199
     
    Bonjour tous,
    Une autre idée !
    Quand trouver montre la ligne sinon message
    Private Sub CommandButton1_Click()
    Dim Ret As Long
    Dim Cel As Range
        Ret = InputBox("Entrer le code postal à chercher")
        For Each Cel In [A3:A10]
            If Cel = Ret Then
                Rows(Cel.Row).Select
                Exit Sub
            End If
        Next
        MsgBox "Pas trouvé"
    End Sub

    A+
    0
    1. Misticade
       
      C'est PARFAIT!!! avec tout ça mélangé ça fonctionne

      Merci a vous pour votre aide!!

      :-):-):-)
      0