Bonjour le fil, bonjour le forum,
Steelson tire plus vite que son ombre je navet aucune chance... Tant pis je t'envoie quand même deux propositions :
Code du bouton :
Sub Macro1()
Dim RE As Worksheet 'déclare la variable RE (onglet REnseignements)
Dim BI As Worksheet 'déclare la variable BI (onglet Base Inventaire)
Dim VC As String 'déclare la variable VC (Valeur Cherchée)
Dim R As Range 'déclare la variable R (Recherche)
Set RE = Worksheets("RENSEIGNEMENTS") 'définit l'onglet RE
Set BI = Worksheets("BASE INVENTAIRE") 'définit l'onglet BI
VC = RE.Range("A4").Value 'définit la valeur cherchée VC
Set R = BI.Cells.Find(VC, , xlValues, xlWhole) 'définit la recherche R (recherche la valeur exacte de VC dans toutes les cellules de l'onglet BI)
If Not R Is Nothing Then 'condition : si au moins une occurrence a été trouvée
BI.Activate 'active l'onglet BI
BI.Rows(R.Row).Select 'sélectionne la ligne de la première occurrence trouvée
Else 'sinon
MsgBox "Valeur non trouvée !" 'message
End If 'fin de la condition
End Sub
ou macro événementielle Change à placer dans l'onglet RENSEIGNEMENTS (plus besoin de bouton) :
Private Sub Worksheet_Change(ByVal Target As Range)
Dim BI As Worksheet 'déclare la variable BI(onglet Base Inventaire)
Dim VC As String 'déclare la variable VC(Valeur Cherchée)
Dim R As Range 'déclare la variable R(Recherche)
If Target.Address <> "$A$4" Then Exit Sub 'si le changement a lieu ailleurs qu'en A4, sort de la procédure
Set BI = Worksheets("BASE INVENTAIRE") 'définit l'onglet BI
VC = Target.Value 'définit la valeur cherchée VC
Set R = BI.Cells.Find(VC, , xlValues, xlWhole) 'définit la recherche R (recherche la valeur exacte de VC dans toutes les cellules de l'onglet BI)
If Not R Is Nothing Then 'condition : si au moins une occurrence a été trouvée
BI.Activate 'active l'onglet BI
BI.Rows(R.Row).Select 'sélectionne la ligne de la première occurrence trouvée
Else 'sinon
MsgBox "Valeur non trouvée !" 'message
End If 'fin de la condition
End Sub