Bonjour BenHarber et le forum,
Je ne sais pas où est l'erreur dans ton système, mais avec excel 2003 cela marche très bien avec une liste de validation et la macro suivante :
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Application.Intersect(Target, Range('A1')) Is Nothing Then
Range('B1').Value = Range('A1').Value
End If
End Sub
Cordialement
Bernard