Bonjour tout le monde,

Je rencontre un problème tout bête et je ne vois pas d'où vient mon erreur. Peut être allez vous pouvoir m'aider

J'ai un formulaire simple composé de 2 boutons (valider nommé v ou quitter nommé q) et où je demande à l'utilisateur d'inscrire un chiffre (zone de texte dont le nom est d) et de choisir dans une liste déroulante (zone de liste modifiable dont le nom est s) un intitulé pré enregistré.
Voici le code du formulaire:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
' Initialisation du formulaire
Private Sub UserForm_initialize()
 
formulaire.d.Value = 10 ' délais en jours entre aujourd'hui et le dernier contact
 
With s
     .AddItem "AUTORISER"
     .AddItem "REJET"
 
 End With
End Sub
 
 
Private Sub v_click()
 
If IsNumeric(formulaire.d.Value) = False Then
MsgBox "Veuillez inscrire un caractère numérique"
Unload Me
formulaire.Show
End If
 
delais = formulaire.d.Value ' A réutiliser dans le code
statut = formulaire.s.Value ' A réutiliser dans le code
 
formulaire.Hide
Unload formulaire
 
End Sub
 
Private Sub q_click()
formulaire.Hide
End
 
End Sub
Je souhaite ensuite utiliser ces données inscrites par l'utilisateur dans un module. Le but du module est de calculer une date qui correspond à la date d’aujourd’hui moins le nombre de jours inscrits dans le formulaire (correspond à delais ie d). Voici le code:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
Option Explicit
Public delais, d As Integer
Public statut, s As String
 
 
Sub final2()
Dim today As Double
Dim date_nouvelle As Date
 
'chargement du formulaire
Load formulaire
formulaire.Show
 
today = Now
date_nouvelle = Now - delais
MsgBox "date nouvelle vaut: " & date_nouvelle
 
End Sub
Quand je lance mon module, j'ai le userform (nommé formulaire) qui apparait à l'écran. Je remplie ce qui faut remplir et je clique sur valider. Ensuite ça marche pas. Le delais dans mon module n'a pas de valeur. Donc impossible de calculer la nouvelle date. En gros les données inscrites dans le formulaire ne sont pas "chargées" dans le module.

Une idée ?

edit: j'ai déjà ajouté dans le code de mon module un msgbox pour renvoyer la valeur de delais. delais ne vaut rien. Rien ne s'affiche.

Merci d'avance pour vos réponses !!