IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Windows Forms Discussion :

Recherche dans une autre feuille de Excel même classeur


Sujet :

Windows Forms

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Juin 2002
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2002
    Messages : 5
    Points : 3
    Points
    3
    Par défaut Recherche dans une autre feuille de Excel même classeur
    Bonjour à tous,

    je suis un debutant en VB j aimerai creer un bouton de recherche dans excel. Le bouton est dans la feuille 1 une fois que je clique la dessus il cherchera dans la colonne (B) de la feuille 2 la valeur de la cellule G2 de la feuille 1

    je vous remercie de votre aide


    kabi

  2. #2
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Mai 2007
    Messages : 21
    Points : 23
    Points
    23
    Par défaut
    Bonsoir,

    Je ne suis pas sur que tu soit dans le bon forum. Essaye ce bout de code qui est assez vieux mais qui devrait convenir. C'est basique et pas super réutilisable (mais c'est du vba )


    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
    19
    20
     
    Sub Main
    Dim FeuilleActuel As String
    FeuilleActuel = ActiveSheet.Name
    MsgBox RechercheVal(Range("G2").Text, "Feuil2"), vbInformation, "RechercheVal"
    Sheets(FeuilleActuel).Select
    End Sub
     
    Function RechercheVal(ByVal Valeur As String, Feuille As String) As String
    Sheets(Feuille).Select
       With ActiveSheet.Range("B1:B450") 'ICI il faut indiquer la bonne plage de recherche pour ton cas, ->
       '->tu peux bien sur rechercher la dernière Cells remplis pour la colonne
           Set c = .Find(Valeur, LookIn:=xlValues)
           If Not c Is Nothing Then
                RechercheVal = "Valeur trouvé en :" & vbCrLf & "Feuille: " & Feuille & " " & vbCrLf & "Ligne: " & c.Row '& " " & c.Column
        Else
                RechercheVal = "La valeur n'a pas été trouvé"
           End If
       End With
    End Function
    Il te reste à changer quelques valeurs pour que ça concorde (le nom des feuilles excel et la plage de recherche)
    Ajouter une forme dans ta feuille 1 et lui affecter une macro

    Bon vba...

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Juin 2002
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2002
    Messages : 5
    Points : 3
    Points
    3
    Par défaut
    Merci
    effectivement j ai du voir le forum excel sous vba mais grace a ton code je crois pouvoir l utilise merci

    KAbi

  4. #4
    Candidat au Club
    Profil pro
    Inscrit en
    Juin 2002
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2002
    Messages : 5
    Points : 3
    Points
    3
    Par défaut
    Re bonjour,
    Au lieu d affiche juste l'information sur ou se trouve la valeur de G2 dans feuille 2 est ce que tu peux me dire comment faire pour aller directement à la ligne dans la feuille 2 correspondant à la valeur de G2

    Merci encore pour ton aide


    Kabi

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Mai 2007
    Messages : 21
    Points : 23
    Points
    23
    Par défaut
    Bonsoir,

    A la volée je ferais :

    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
    19
    20
     
    Sub Main
    'Dim FeuilleActuel As String
    'FeuilleActuel = ActiveSheet.Name
    RechercheVal(Range("G2").Text, "Feuil2")
    'Sheets(FeuilleActuel).Select
    End Sub
     
    Function RechercheVal(ByVal Valeur As String, Feuille As String) As String
    Sheets(Feuille).Select
       With ActiveSheet.Range("B1:B450") 'ICI il faut indiquer la bonne plage de recherche pour ton cas, ->
       '->tu peux bien sur rechercher la dernière Cells remplis pour la colonne
           Set c = .Find(Valeur, LookIn:=xlValues)
           If Not c Is Nothing Then
    Cells(c.Row,c.Column).Select
        Else
                RechercheVal = "La valeur n'a pas été trouvé"
           End If
       End With
    End Function
    J'ai pas testé mais il me semble que ça doit être ok... Ou c'est peut être Cells(c.Column,c.Row).Select, je ne sais plus trop.
    En revanche il faudrat peut être gérer le cas ou plusieurs cellules contiennent la valeur G2 !!

    Bon code

Discussions similaires

  1. [XL-2010] Fonction de recherche dans une autre feuille
    Par yzf-r dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 07/07/2011, 20h19
  2. [XL-2003] recherche emplacement d'une date dans une autre feuille
    Par wuging dans le forum Macros et VBA Excel
    Réponses: 12
    Dernier message: 27/08/2010, 16h19
  3. recherche emplacement d'un département dans une autre feuille
    Par bagheria85 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 27/08/2010, 15h16
  4. Macro :Transfert de données dans une autre feuille excel
    Par bakaouf dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 27/07/2010, 14h14
  5. [XL-2003] Recherche d'une même valeur dans une autre feuille
    Par Rrrroh dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 25/06/2010, 09h03

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo