EXCEL ref autre feuille et utilisation du IF

Bonjour,

J'ai un problème sur Excel. Je dispose d'un fichier excel avec plusieur feuilles. Je souhaite mettre dans la feuille 1 un tableau sur lequel si je viens mettre le mot chaise dans la cellur A1, le programme va aller chercher les références de ce produit qui se trouve dans la feuille3.
L'idée c'est de dire sur la feuille : si le contenu de A1 égale au contenu d'une cellule qui se trouve entre A1 et A10 dans la feuille2 alors copier dans la cellule B1 la valeur correspondant à la cellule Bi de la feuille 2.

J'espère que j'ai été assez clair.

Je vous remercie par avance de votre aide car j'ai essayé beaucoup d'alternatives mais je n'y arrive pas.

2 réponses

  1. Modérateur
    Bonjour,
    Par VBA?
    Alors voici le code d'une macro se déclenchant sur ordre depuis la feuille "Feuil1" (ALT+F8) :
    Sub cherche()
    Dim Trouve As Range
    Dim Valeur_cherchee As String, Valeur_trouvee As String
    
    If Sheets("Feuil1").Range("A1").Value <> "" Then
        Valeur_cherchee = Sheets("Feuil1").Range("A1").Value
        With Sheets("Feuil2")
            Set Trouve = .Columns(1).Cells.Find(what:=Valeur_cherchee)
                If Trouve Is Nothing Then
                    MsgBox "Pas trouvé"
                Else
                    Valeur_trouvee = Trouve.Offset(0, 1).Value
                End If
            Set Trouve = Nothing
        End With
    End If
    Sheets("Feuil1").Range("B1").Value = Valeur_trouvee
    End Sub


    On peux aussi l'adapter pour qu'elle se déclenche automatiquement au changement de valeur dans la cellule A1. Pour cela, voir du côté de Worksheet_Change()
    0
    1. Contributeur
      Bonjour,

      et pourquoi pas un recherchev() tout simple ?
      en B1 :
      =RECHERCHEV(A1;Feuil2!$A$1:$B$20;2;FAUX)

      eric
      0
      1. Modérateur
        tu as tout a fait raison. Cependant, je l'ai orienté vers VBA à cause d'un mot dans sa question :
        le programme va aller chercher les références de ce produit qui se trouve dans la feuille3.
        0