Format de cellule dans VBA

Résolu
qaywsx Messages postés 5 Statut Membre -  
qaywsx Messages postés 5 Statut Membre -
Bonjour,

Je souhaite imposer un format de cellule basé sur la date du jour avec un chiffre complémentaire.
J'ai essayé "00000000-0" mais ce n'est pas satisfaisant.

Je m'explique par un exemple:

Si nous sommes le 17.11.2014, je souhaite pouvoir saisir un texte(nombre) composé de la date en sens inverse 20141117 suivi d'un chiffre entre 1 et 9 soit au final 20141117-1 par exemple.

J'aimerais qu'il ne soit pas possible de saisir que partiellement la date inversée, car si je saisis les 5 premiers chiffres uniquement ça me donne 00002014-1.

Quelqu'un peut-il m'aider ? Je débute dans VBA et là je suis arrivé à la limite de mes capacités.

D'avance merci pour votre aide

3 réponses

  1. redaiwa Messages postés 370 Statut Membre 119
     
    Salam qaywsx.

    Essaye ce code :

    Private Sub Worksheet_Change(ByVal Target As Range)
    Application.EnableEvents = False
    j = Mid(Target, 1, 2)
    m = Mid(Target, 4, 2)
    a = Mid(Target, 7, 4)
    n = 1
    Target = a & m & j & "-" & n
    Application.EnableEvents = True
    End Sub


    Quand on saisit "17/11/2014" dans une cellule, le contenu est automatiquement modifié pour devenir "20141117-1"

    J'espère avoir aidé :)
    1
  2. qaywsx Messages postés 5 Statut Membre 1
     
    Bonjour redaiwa,

    Ta solution fonctionne très bien et c'est celle que je vais utilisé.

    J'ai également trouvé une autre possibilité, sans passer par VBA:

    Soit la Date sous forme jj.mm.aaaa

    =JOUR(Date)+MOIS(Date)*100+ANNEE(Date)*10000 & " - " & n

    Merci pour ton aide !
    1
  3. f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention   1 717
     
    bonjour,

    je souhaite pouvoir saisir un texte(nombre) Dans quoi, une cellule, une textebox ou .... ...????????????????????
    0