Sub cherche()
Dim Prem As String, Deuz As String, Troiz As String
Dim Sh As String
Dim Lig4 As Long
Dim Lig1 As Variant, Lig2 As Variant, Lig3 As Variant
Dim Plg1 As Range, Plg2 As Range, Plg3 As Range
'calcul du nom de la feuille
Prem = [J5] & "x"
Deuz = [K5] & "_"
Troiz = IIf([J7] = [J8], "SAME", IIf([J7] < [J8], "HYBRIDE", "INV HYBRIDE"))
Sh = Prem & Deuz & Troiz
With Sheets(Sh)
Lig1 = Application.Match([G5], .Columns(1), 1)
Set Plg1 = .Cells(Lig1, 3).Resize(.Cells(Lig1, 1).MergeArea.Rows.Count, 1)
Lig2 = Application.Match([J7], Plg1, 1) - 1
Lig2 = Lig1 + Lig2
Set Plg2 = .Cells(Lig2, 5).Resize(.Cells(Lig2, 3).MergeArea.Rows.Count, 1)
Lig3 = Application.Match([J8], Plg2, 1) - 1
Lig3 = Lig2 + Lig3
Set Plg3 = .Cells(Lig3, 7).Resize(.Cells(Lig3, 5).MergeArea.Rows.Count, 1)
Lig4 = Application.Match([N4], Plg3, 1) - 1
Lig4 = Lig3 + Lig4
Range("B14:S14").Value = .Range(.Cells(Lig4, 10), .Cells(Lig4, 27)).Value
Range("B23:U23").Value = .Range(.Cells(Lig4 + 1, 10), .Cells(Lig4 + 1, 29)).Value
Range("R4").Value = .Range(.Cells(Lig4, 30), .Cells(Lig4, 30)).Value
End With
End Sub