effectivement, si tu as copié directement le code dans VBA tu auras une erreur. Il manque :
Sub MaMacro()
en première ligne du code. Copie ce qui suit directement dans VBA :
Sub MaMacro()
Dim i As Integer
For i = 9 To 31
If IsNumber(Range("D" & i)) = True Then '<--Voici la syntaxe
Range("F6").Select
Selection.Copy
Range("F" & i).Select
ActiveSheet.Paste
End If
Next i
End Sub