XL 2013 Macro conversion de dates

  • Initiateur de la discussion Initiateur de la discussion flo92
  • Date de début Date de début

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 !

flo92

XLDnaute Nouveau
Bonjour à tous,
Je récupère un fichier contenant des colonnes avec date et heure et j'aimerai pouvoir dans une macro : convertir ces dates pour supprimer les heures.
J'ai essayé avec la fonction Convertir en séparant en 2 colonnes (colonne 1 =date et colonne 2 = heure) et en utilisant l'option "ne pas distribuer" pour supprimer les heures mais je ne sais pas comment le transcrire en macro.

Merci d'avance,

Je vous joins un exemple du fichier...
 

Pièces jointes

Re : Macro conversion de dates

Bonjour,
Désolée, je ne suis pas une pro des macros...
Pouvez-vous me donner un exemple ? A quoi correspond DHSrc ? Est-ce que cela correspond à la plage de cellules contenant les dates ? cela va remplacer les dates existantes ?
Merci
 
Re : Macro conversion de dates

Non, c'était supposé une variable déclarée As Date contenant une date et heure.
DHSrc: Date et heure source
DatCbl: Date cible
HeuCbl: Heure cible
Mais je crois que moi je laisserais l'heure dans les cellules tellement il est facile dans des formules ailleurs de ne tenir compte que de la date à l'aide de la fonction ENT d'Excel.
 
Re : Macro conversion de dates

En fait,je dois ensuite intégrer cette liste dans une base Access sans les heures.
Donc, je voulais faire un bouton me permettant de modifier toutes les colonnes contenant des dates. J'ai essayé avec l'enregistreur de macro d'enregistrer les actions de Données Convertir mais il ne garde pas la sélection "Colonne non distribuée" sur la colonne heure.
 
Re : Macro conversion de dates

C'est normal puisque les cellules ne contiennent aucunement le texte montré par leur format !
Quand est-ce que les utilisateurs cesseront enfin de confondre ce qu'ils voient dans une cellule avec ce qu'elle contient réellement ?
 
Re : Macro conversion de dates

Essayez comme ça :
VB:
Sub test()
Dim Plage As Range, ColTrv As Range
Set Plage = Feuil1.UsedRange
Set Plage = Plage.Rows(2).Resize(Plage.Rows.Count - 1)
Set ColTrv = Plage.Columns(1).Offset(, Plage.Columns.Count)
ColTrv.FormulaR1C1 = "=INT(RC1)"
Plage.Columns(1).Value = ColTrv.Value
ColTrv.FormulaR1C1 = "=INT(RC3)"
Plage.Columns(3).Value = ColTrv.Value
ColTrv.Delete xlShiftToLeft
End Sub
 
Dernière édition:
Re : Macro conversion de dates

Bonjour flo92, Bernard,

Pas besoin de formules ni de code VBA, la commande Remplacer suffit :

- sélectionner les colonnes des dates (A et C ici) avec la touche Ctrl enfoncée pour sélection multiple

- touches Ctrl+H

- Rechercher : <taper un espace suivi de l'astérisque *>, Remplacer par : <rien>

- clic sur le bouton "Remplacer tout".

Edit : il s'agit d'une recherche partielle, dans les options de la boîte de dialogue la touche "Totalité du contenu de la cellule" doit être décochée.

A+
 
Dernière édition:
- 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

  • Question Question
Power Query Power Query
Réponses
26
Affichages
667
  • Résolu(e)
Microsoft 365 DateDif()
Réponses
5
Affichages
277
Retour