Bonjour,
Ci-dessous un code qui effectue une recherchev.
J'aimerais pouvoir faire la même chose mais en effectuant une recherche dans une autre feuille que la feuille active.
Pouvez-vous m'aider? (j'espère que je suis explicite)
Merci
Jerems
----------------------------------------------------------
Option Explicit
Const AdrTableau1 As String = "B1:A65536"
Const AdrTableau2 As String = "C165536"
Const AdrCellule As String = "F1"
Const MsgErreur As String = "Valeur non trouvée"
Dim InEvent As Boolean
'
Private Sub Worksheet_Change(ByVal Target As Range)
'
Dim Resultat As Variant
'
If Not InEvent Then
InEvent = True
If Not Intersect(Target, Range(AdrTableau1 & "," & _
AdrTableau2 & "," & AdrCellule)) Is Nothing Then
If IsEmpty(Range(AdrCellule)) Then
Range("G10").ClearContents
InEvent = False
Exit Sub
End If
With Application.WorksheetFunction
On Error Resume Next
Resultat = .VLookup(Range(AdrCellule), Range(AdrTableau1) _
, 2, False)
If Err <> 0 Then
Err.Clear
Resultat = .VLookup(Range(AdrCellule), Range(AdrTableau2) _
, 2, False)
End If
End With
Range("H1") = IIf(Err <> 0, MsgErreur, Resultat)
End If
InEvent = False
End If
End Sub
Ci-dessous un code qui effectue une recherchev.
J'aimerais pouvoir faire la même chose mais en effectuant une recherche dans une autre feuille que la feuille active.
Pouvez-vous m'aider? (j'espère que je suis explicite)
Merci
Jerems
----------------------------------------------------------
Option Explicit
Const AdrTableau1 As String = "B1:A65536"
Const AdrTableau2 As String = "C165536"
Const AdrCellule As String = "F1"
Const MsgErreur As String = "Valeur non trouvée"
Dim InEvent As Boolean
'
Private Sub Worksheet_Change(ByVal Target As Range)
'
Dim Resultat As Variant
'
If Not InEvent Then
InEvent = True
If Not Intersect(Target, Range(AdrTableau1 & "," & _
AdrTableau2 & "," & AdrCellule)) Is Nothing Then
If IsEmpty(Range(AdrCellule)) Then
Range("G10").ClearContents
InEvent = False
Exit Sub
End If
With Application.WorksheetFunction
On Error Resume Next
Resultat = .VLookup(Range(AdrCellule), Range(AdrTableau1) _
, 2, False)
If Err <> 0 Then
Err.Clear
Resultat = .VLookup(Range(AdrCellule), Range(AdrTableau2) _
, 2, False)
End If
End With
Range("H1") = IIf(Err <> 0, MsgErreur, Resultat)
End If
InEvent = False
End If
End Sub