Saisie des dates sans les slashs

Bonjour Dan,

quand j'utilise votre fichier j'ai ceci :

image

Je n'arrive pas à me dépatouiller avec.

Frédéric

Je n'arrive pas à me dépatouiller avec.

Il y a une petite erreur de ma part au début du code sur cette ligne -->

If .Value = vbnuulstring Then Exit Sub

Désolé....

Prenez ce fichier-ci (j'ai supprimé le précédent)

Bonjour @BsAlv

Même si vos réponses semblent souvent pertinentes, il n'en reste que la POLITESSE est de mise partout ou vous allez !

Alors, juste un petit rappel des bonne pratiques sur ce forum, plutôt que de tomber comme un cheveu sur la soupe

https://forum.excel-pratique.com/excel/a-lire-avant-de-poster-charte-du-forum-et-informations-utiles...

Les autres règles à respecter

  • Un minimum de politesse est de rigueur (bonjour, SVP, merci, ...), sans cela vous aurez peu de chance d'obtenir une réponse et vous risquez de voir votre message supprimé par un modérateur.

Bonne journée

bonjour JExceL2fr,

En effet, ces sujets sont délicats sur les sites web francophones, je m'en excuse, et ici, je fais déjà plus d'efforts que sur les sites anglophones. Là-bas, on apporte la solution sans fioritures.

Donc oui, il y a du travail à faire.

Merci, pour votre réaction.

Bonsoir le forum,

Bonsoir le fil

Je viens tout doucement et couvert de mon masque "anonymous" m'immiscer dans ce fil.

Très très peu doué par le Vba (Merci à tous ceux qui m'ont toujours aidé dans mes projets, ......ils se reconnaitront), j'ai retrouvé dans mon grimoire un code qui faisait cela (de façon moindre que les codes de nos amis dévoués sur ce fil) mais pour une seule cellule. Ne pourrait on pas "revisiter" ce code pour qu'il ait la même finalité mais pour plusieurs cellules identifiées dans la constante et sans erreur de saisie (où avec un message d'erreur) ????

P.s : @Frédéric38360" : si le code de BsAlv a le résultat escompté, il te faut le signaler comme résolu (merci pour lui).

Bonne soirée. Eric

Option Explicit

Private Const CelluleDate = "a1"

Private Sub Worksheet_Change(ByVal Target As Range)

    If Intersect(Target, Me.Range(CelluleDate)) Is Nothing Then Exit Sub
    If Target.Cells.Count > 1 Then Exit Sub

    'Pour éviter le dépassement de capacité sur un format Date
    Target.NumberFormat = "general"
    If IsDate(Target.Value) Then Exit Sub

    If IsNumeric(Target.Value) Then
        Application.EnableEvents = False
        On Error Resume Next

        If Target.Value < 1000000 Then
            '152022 -> 01/05/2022
            Target.Value = DateSerial(Target.Value Mod 10000, (Target.Value \ 10000) Mod 10, Target.Value \ 100000)
        ElseIf Target.Value >= 1011900 Then
            '1052022 -> 01/05/2022
            Target.Value = DateSerial(Target.Value Mod 10000, (Target.Value \ 10000) Mod 100, Target.Value \ 1000000)
        End If

        On Error GoTo 0
        Application.EnableEvents = True
    End If
End Sub                              
Rechercher des sujets similaires à "saisie dates slashs"