XL 2013 Convertir nombre à 8 chiffre en date

maval

XLDnaute Barbatruc
Bonjour

Sur une colonne "C" je rentre des dates. Est il possible de rentré un nombre à 8 chiffres ex:12121955 et qui soit converti en date soit 12/12/1955 dans la même cellule.

Je vous remercie d'avance
 

CISCO

XLDnaute Barbatruc
Re : Convertir nombre à 8 chiffre en date

Bonjour

Tu peux faire avec le format personnalisé ##"/"##"/"#### mais cela ne change que l'affichage, cela ne te donne pas une date utilisable directement dans une formule ou en VBA.

@ plus
 

Jocelyn

XLDnaute Barbatruc
Re : Convertir nombre à 8 chiffre en date

Bonjour le Forum,
Bonjour maval, CISCO:)

une formule honteusement pompée sur modeste geedee

en A1 : 12121955


en B1 avec format date =TEXTE(A1;"00\/00\/0000")*1 va donner 12/12/1955 si on laisse en format standard on aura 20435 soit les données réellement transformées en date

Cordialement
 

R@chid

XLDnaute Barbatruc
Re : Convertir nombre à 8 chiffre en date

Bonsoir @ tous,
sur une autre colonne :
Code:
=TEXTE(C1;"##\/##\/####")

ou bien avec données/convertir :
maval.jpg

@ + +
 

Pièces jointes

  • maval.jpg
    maval.jpg
    65.7 KB · Affichages: 86

maval

XLDnaute Barbatruc
Re : Convertir nombre à 8 chiffre en date

Bonsoir

Je vous remercie mais j'aimerai rentré un nombre en "C" et qui soit convertie en date ##/##/#### automatiquement sans passé par une autre cellule donc je pense que sa peut se faire en VBA?
 

gosselien

XLDnaute Barbatruc
Re : Convertir nombre à 8 chiffre en date

Bonsoir,

le problème va se poser quand on rentre 01012014 , le premier zéro disparaît , mes tests ne donnent rien mais il y bien qq un ici qui va trouver ça :)


Ceci dit, je ne voit pas trop l’intérêt de la chose :(

P.
 

Modeste geedee

XLDnaute Barbatruc
Re : Convertir nombre à 8 chiffre en date

Bonsour®
Bonjour

Sur une colonne "C" je rentre des dates. Est il possible de rentré un nombre à 8 chiffres ex:12121955 et qui soit converti en date soit 12/12/1955 dans la même cellule.

Je vous remercie d'avance
proc événementielle :
voir là ;
Date And Time Entry
éventuellement adapter les formules pour adapter format DD/MM/YYYY au lieu du format US MM/DD/YYYY
 

job75

XLDnaute Barbatruc
Re : Convertir nombre à 8 chiffre en date

Bonsoir à tous,

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim r As Range, x$
Set r = Intersect(Target, [C:C], Me.UsedRange)
If r Is Nothing Then Exit Sub
Application.EnableEvents = False
For Each r In r 'si entrées multiples (copier-coller)
  r.NumberFormat = "General"
  If r Like "#######" Or r Like "########" Then
    x = Format(r, "#0\/00\/0000")
    If IsDate(x) Then
      r = Format(x, "mm/dd/yyyy")
      r.NumberFormat = "dd/mm/yyyy" 'format modifiable
    End If
  End If
Next
Application.EnableEvents = True
End Sub
Edit : modifié pour tenir compte des dates comme 14/07/1789...

Et bonne nuit.
 
Dernière édition:

job75

XLDnaute Barbatruc
Re : Convertir nombre à 8 chiffre en date

Bonjour maval, le forum,

Cette macro annule l'entrée de nombres qui ne sont pas convertibles en dates :

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim r As Range, n&, a$(), x$, y$
Set r = Intersect(Target, [C:C], Me.UsedRange)
If r Is Nothing Then Exit Sub
Application.EnableEvents = False
For Each r In r 'si entrées multiple (copier-coller)
  n = n + 1
  ReDim Preserve a(1 To 2, 1 To n)
  x = CStr(r.Value2)
  If IsNumeric(x) Then
    y = Format(x, "#0\/00\/0000")
    If (x Like "#######" Or x Like "########") And IsDate(y) Then
      a(1, n) = r.Address
      a(2, n) = Format(y, "m/d/yyyy")
    Else
      Application.Undo 'annulation
      GoTo 1
    End If
  End If
Next
For n = 1 To UBound(a, 2)
  If a(1, n) <> "" Then
    With Range(a(1, n))
      .Value = a(2, n)
      If Not IsNumeric(.Value2) Then .Value = "" 'autre cas d'annulation
    End With
  End If
Next
1 [C:C].NumberFormat = "dd/mm/yyyy" 'format modifiable
Application.EnableEvents = True
End Sub
Edit : j'ai modifié car VBA considère que par exemple 14/07/1789 est une date...

Bonne journée.
 
Dernière édition:

Statistiques des forums

Discussions
312 155
Messages
2 085 817
Membres
102 991
dernier inscrit
justingr