Bonjour,
J'ai résolu le sujet comme j'ai pu, avec les réponses que j'ai pu trouver sur le même sujet. Parmi elles une de tes réponses à l'emporte-piéce, qui n'aide pas vraiment , et celle de Sébastien je suppose, partielle aussi.
En combinant les 2 çà passe.
Private Sub Worksheet_Change(ByVal Target As Range)
Dim mois$
Application.ScreenUpdating = False
If Not Application.Intersect(Target, Range("A2")) Is Nothing Then
If Target.Address = "$A$2" Then
mois = Range("A2")
Call Module1.Generer_mois
End If
End If
End Sub
Sub Generer_mois()
Dim nbreJrs%, g%, h%, i%, j%, m%, date_debut As Variant, n%, derligBD%, dercol%, mois1$, mois%
Dim ws1 As Worksheet, ws2 As Worksheet, ws3 As Worksheet
Set ws1 = Sheets("mois")
Set ws2 = Sheets("BD")
Set ws3 = Sheets("data")
mois1 = Range("A2")
MsgBox mois1
Application.ScreenUpdating = False
For i = 1 To 12
If ws3.Range("C" & i) = mois1 Then
mois = ws3.Range("B" & i)
Exit For
End If
Next i
Mais çà m'efface les listes déroulantes je sais pas ou.
Salut