XL 2013 Conversion de colonnes dates en format numérique

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Daniel Desch

XLDnaute Nouveau
Bonjour,

J'ai un tableau excel qui contient une colonne avec des dates

Grâce à une macro, je souhaite convertir ces dates en numérique (nombre) au format aaaammjj, quelque soit par ailleurs le format actuel des dates en question

Merci par avance pour votre aide

Cordialement

Daniel
 
Bonjour,

Je pense que cette formule convertit en texte et non en numérique
En plus je veux la faire sur toutes les cases renseignées de la colonne et ce n'est pas moi qui vais faire ça, ce sont les utilisateurs qui cliqueront sur un bouton pour mettre en forme le fichier excel. Il faut donc que dans la macro associée au bouton le reformatage complet de la colonne soit réalisé (avec en plus d'autres actions que je rajouterai à la suite).

Cordialement
 
bonsour®
Bonjour,

J'ai un tableau excel qui contient une colonne avec des dates

Grâce à une macro, je souhaite convertir ces dates en numérique (nombre) au format aaaammjj, quelque soit par ailleurs le format actuel des dates en question

Merci par avance pour votre aide

Cordialement

Daniel
c'est justement le format actuel des dates que nous ne voyons pas d'ici ...
 
Bonjour Modeste,

J'ai déjà vu dans les tableaux des formats de dates comme par exemple les suivants. Suivant les utilisateurs les tableaux ne sont pas tous formatés pareils, c'est un peu ça la difficulté mais ils contiennent tous les mêmes types de données

12/03/2019​
01/02/19​
23-févr​

Dans ces 3 cas je voudrais respectivement convertir en 20190312, 20190201 et 20190223 avec format numérique

Cordialement
 
Re,

A tester sur des cellules de date en colonne A
VB:
Sub DateNumerique()
    Dim c As Range, plage As Range
    Set plage = Sheets("Feuil1").Range("A1").CurrentRegion.Columns(1)
    For Each c In plage.Cells
        If IsDate(c.Value) Then c.Value = CLng(Format(c, "yyyymmdd"))
    Next
    plage.NumberFormat = "0"
End Sub

A bientôt
 
Bonjour,

Et pour plaire à certains, si vous avez de très nombreuses cellules à convertir:
VB:
Sub Numeriques()
    Dim plage As Range
    Dim dates As Variant, numériques As Variant
    Dim i As Long
    Set plage = Sheets("Feuil1").Range("A1").CurrentRegion.Columns(1)
    dates = plage.Value
    ReDim numériques(1 To UBound(dates))
    For i = 1 To UBound(dates)
        If IsDate(dates(i, 1)) Then numériques(i) = CLng(Format(dates(i, 1), "yyyymmdd"))
    Next
    plage.Value = Application.Transpose(numériques)
    plage.NumberFormat = "00000000"
End Sub

Cordialement
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Retour