voila j'ai réussi en trichant un peu
j'ai rajouté
Private Sub ComboBox1_MouseDown(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
Sheets("temp").Range("l2") = "ok"
End Sub
et en modifiant
Private Sub ComboBox1_Change()
If Sheets("temp").Range("l2") = "ok" Then Module1.datechange
Sheets("temp").Range("l2") = ""
End Sub
s'il y a plus simple merci de me le dire