Bonjour,

J'ai créé un formulaire sous Excel ou je dois saisir une date.
Cette date est ensuite renseigné dans une cellule précise d'un tableau mais mon problème c'est qu'il me transforme la date en format américain.

Exemples :
si j'ai mis 10/04/2015, il affiche alors 04/10/2015
si j'ai mis 25/04/2015 il affiche la bonne date 25/04/2015 (car le mois 25 n'existe pas !!)

Comme faire pour que la valeur soit correctement mise dans Excel alors que la saisie dans le formulaire est bonne ?

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
35
36
37
38
39
40
41
42
43
Sub enregistre()
 
    Dim EntreePlus As Worksheet, ZZ As Range, Erg, i As Integer, AA As Range, BB As Range, EE As Range, XX As Range, YY As Range, FF As Range, GG As Range, HH As Range, II As Range, JJ As Range, KK As Range, LL As Range, MM As Range, NN As Range, OO As Range
    Dim valeur As String
 
    Set EntreePlus = ThisWorkbook.Worksheets("donnees")
 
    Application.ScreenUpdating = True
 
    deleteOldItemsWB
 
 
    'Pour positionner la cellule active en dehors de la liste car si dans la liste la nouvelle ligne se met
    'en dehors de la liste
    Range("A1").Select
 
    'Quelques vérifications sur la saisie des données
    If UserForm1.TextBox1.Value <> Format(UserForm1.TextBox1, "dd/MM/yyyy") Then
        MsgBox "Veuillez renseigner la date sous le format jj/mm/aaaa"
        Exit Sub
    End If
 
    If UserForm1.TextBox1.Value = "" Then
        MsgBox "Veuillez renseigner la date de fabrication"
        Exit Sub
    End If
 
.....
 
    Ligne = EntreePlus.Cells(16384, 1).End(xlUp).Offset(1, 0).Row
    Set XX = EntreePlus.Cells(Ligne, 1) 'Date
.....
 
    XX.Offset(0, i).Value = UserForm1.TextBox1.Value
 
....
Unload UserForm1
 
Application.ScreenUpdating = True
 
    MsgBox "Les données ont été enregistrées avec succès"
 
End Sub
Par avance merci pour votre aide


Nicolas