Erreur 91 ?

camouche44 -  
Patrice33740 Messages postés 8561 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Pour un travail je dois faire une macro qui me permettrai de chercher une valeur x dans un tableau et sortir la valeur y dans la colonne à côté. Cependant, je ne peux pas mettre une valeur fixe car cette valeur est variable d'un travail à un autre, même si la valeur x change je dois toujours trouver la valeur y à coté de celle-ci. Normalement ce son des chiffre à virgule et des résultats de formule, mais même si j'identifie ma valeur min comme un Single ca fonctionne pas... j'ai toujours cette fameuse erreur 91 à rownumber=rng.row. Est ce que quelqu'un pourrait m'aider à résoudre mon problème considérant que je suis très nouvelle avec vba

Sub search()
'
' search Macro
'

Dim rng As Range
Dim min_val As String
Dim rownumber As Long

min_val = Sheets("Feuil1").Range("A1").Value


Set rng = Sheets("Feuil2").Columns("A:A").Find(What:=min_val, _
LookIn:=xlFormulas, LookAt:=xlWhole, SearchOrder:=xlByRows, _
SearchDirection:=xlNext, MatchCase:=False, SearchFormat:=False)
rownumber = rng.Row
Sheets("Feuil1").Range("B2").Value = Sheets("Feuil2").Cells(rownumber, 2).Value

End Sub

merci énormément de votre aide

2 réponses

Patrice33740 Messages postés 8561 Date d'inscription   Statut Membre Dernière intervention   1 780
 
Bonjour,

Comme ceci, l'erreur c'est que ça trouve pas (et y a pas besoin de rownumber) :
Sub search()
Dim rng As Range
Dim min_val As String
  min_val = Worksheets("Feuil1").Range("A1").Value
  Set rng = Worksheets("Feuil2").Columns("A:A").Find(What:=min_val, LookIn:=xlFormulas, LookAt:=xlWhole, _
                                                SearchDirection:=xlNext, MatchCase:=False, SearchFormat:=False)
  If Not rng Is Nothing Then
    Worksheets("Feuil1").Range("B2").Value = rng.Offset(0, 1).Value
  Else
    MsgBox min_val & " non trouvé", vbInformation
  End If
End Sub


Note : Range appartient à Worksheet (Sheet n'existe pas).

1
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   Ambassadeur 1 584
 
bonjour, le message d'erreur n'inclut pas de texte explicatif?
merci d'utiliser les balises de code quand tu partages du code: https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code

le plus probable, je pense, c'est que le
find
ne trouve rien.
tu pourras lire ici comment détecter que rien n'est trouvé: https://forums.commentcamarche.net/forum/affich-37621992-methode-find-dans-vba-recherche-de-donnees-sous-excel

pourquoi as-tu écrit
LookIn:=xlFormulas
?
0