Salut à vous deux et bon 1er mai.
Tiens Myta, je me suis amusé à condenser au maximum ta formule. Comme elle ne doit réagir que dans Feuil1, il est inutile de la mettre dans Thisworkbook, il vaut mieux la placer dans Feuil1, ça évite un test inutile.
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
With Target
If .Column <> 1 And .Row > 312 Then Exit Sub
End With
IIf([Feuil2].[A1] = "", [Feuil2].[A1], _
[Feuil2].[A65536].End(xlUp).Offset(1, 0)) = Target
Cancel = True
End Sub