none
zone liste deroulante VBA help RRS feed

  • Question

  •  

    Bonjour

    j'aurais besoin de vos lumières !!!!!


    voilà je vais être bref et explicit je l'espère

    j'ai une liste d'élément sur un classeur A

    ex :
    ( classeur A)
    .........A................B
    1.....livre...........Blanc
    2.....pomme.......jaune
    3.....poire..........verte
    4.....cerise........rouge
    5.....caramel.....bruin


    dans une autre classeur ( B) je désire créer une liste déroulante appelant
    les éléments de la colonne A dans la cellule A1. jusque là je pense que cela ne devrait pas poser de problème.

    Ensuite je désire lorsque je sélectionne un élément de la liste déroulante (classeur B cellule A1)que je puisse afficher aussi dans mon classeur B cellule B1 l'élément correspond de la même ligne du classeur A

    soit : si je sélectionne poire que Verte s'inscrive dans le classeur B dans la cellule B1.

    Je débute et recherche le code vba d'une tel apllication.

    Voilà en vous remerciant d'avance
    samedi 13 septembre 2008 14:43

Toutes les réponses

  • Bonjour,

     

    Plusieurs solutions, en voici une :

     

    Commencez par recopier cette fonction

    Code Snippet

    Function QuelleCouleurDeFruit(QuelFruit As String)
    Dim oPlageFruits As Range
    Dim oFruit As Range
    Dim strCouleurFruit As String

        Range("A1").Select
        Set oPlageFruits = Range(Cells(1, 1), Cells(ActiveCell.End(xlDown).Row, 1))
        For Each oFruit In oPlageFruits
            If StrComp(oFruit.Value, QuelFruit, vbTextCompare) = 0 Then
                strCouleurFruit = oFruit.Offset(0, 1).Value
                Exit For
            End If
        Next
        If strCouleurFruit = "" Then strCouleurFruit = "Aucune"
        QuelleCouleurDeFruit = strCouleurFruit
        Set oPlageFruits = Nothing
    End Function

     

     

    Puis testez avec cette procédure...

    Code Snippet
    Sub Test()
        MsgBox QuelleCouleurDeFruit("Cerise")
    End Sub

     

     

    Il ne vous reste plus qu'à transplanter la procédure Test() avec celle de votre Liste déroulante...

     

    lundi 22 septembre 2008 13:30
    Modérateur
  • Bonjour,

    Question:  Pourquoi utiliser une macro alors que la fonction rechercheV fera cela très bien ?


    De plus, Excel possède un des plus beaux outils que je connaisse..... l'enregistreur de macros qui permet de faire des choses magnifiques en les faisant sympathiquement à la main et en nettoyant juste le code après.

    mercredi 3 décembre 2008 16:50