Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim lig&, col%, w As Worksheet, j As Variant, i As Variant
lig = Target.Row: col = Target.Column
If lig < 5 Or col < 3 Or Not (Cells(lig, 1) <> "" And Cells(lig + 1, 1) = "" Or Cells(lig - 1, 1) <> "" And Cells(lig, 1) = "") Then Exit Sub
Cancel = True
For Each w In Worksheets
If w.Name <> Me.Name Then
j = Application.Match(Cells(3, col), w.Rows(3), 0)
If IsNumeric(j) Then
i = Application.Match(Cells(lig + (Cells(lig, 1) = ""), 1), w.Columns(2), 0)
If IsNumeric(i) Then
w.Visible = xlSheetVisible 'si la feuille est masquée
Application.Goto w.Cells(i - (Cells(lig, 1) = ""), j)
End If
Exit Sub
End If
End If
Next w
End Sub