Concatener des dates
f76 -
Bonjour,
Je voudrais concaténer des dates pour avoir un format YYYYMMDD au lieu de JJ/MM/AAAA.
J'obtiens la date par ce code, ça fonctionne c'est parfait
Range("G1").Select
Do While ActiveCell.Offset(0, -1) <> ""
ActiveCell.Offset(0, 0) = DateSerial(Left(ActiveCell.Offset(, -1), 4), Mid(ActiveCell.Offset(, -1), 5, 2), Right(ActiveCell.Offset(, -1), 2))
ActiveCell.Offset(0, 0) = DateAdd("w", 1, ActiveCell.Offset(0, 0))
ActiveCell.Offset(1, 0).Activate
Loop
Range("I:I").Select
Selection.Insert Shift:=xlToRight
A partir de là c'est à dire la transformation en YYYYMMDD ça ne fonctionne plus.
Range("H1").Select
ActiveCell.FormulaR1C1 = "=concatenate(text(left(ActiveCell.Offset(, -1),4)),mid(text(ActiveCell.Offset(, -1),4,2)),right(text(ActiveCell.Offset(, -1),2)"
Je pense ne pas en être très loin mais j'ai besoin d'aide svp?
Le tout est en VBA.
- Concatener date et heure excel
- Word et excel gratuit - Guide
- Liste déroulante excel - Guide
- Concatener deux cellules excel - Guide
- Si et excel - Guide
- Déplacer colonne excel - Guide
5 réponses
Si tu essaies simplement de changer le format d'affichage:
[h1] = [g1] [h1].NumberFormat = "YYYYMMDD"
bonjour,
Si, je vois bien, tu calcules une date en G1, et tu obtiens le résultat souhaité.
Ensuite, tu essaies de mettre une formule en H1. Pourquoi utilises-tu une formule, au lieu de mettre en H1 directement la valeur correspondant à la date en G1?
Bonjour, merci pour vos réponses.
La 1ere solution fonctionne parfaitement, je ne connaissait absolument pas mais en même temps je ne suis pas très expérimentée dans ce domaine, je m'autoforme au fur et a mesure.
J'aurais encore une petite question, la cellule H1 affiche des dièses au lieu du résultat qui est visible dans le carré au dessus de la feuille sinon ce n'est pas grave cela ne gène pas pour la suite de la macro.
La 2eme solution j'avais déjà essayé mais ça ne fonctionne pas.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question