convertir date et nombre stocké en format texte

  • Initiateur de la discussion Initiateur de la discussion reda1974
  • 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 !

reda1974

XLDnaute Nouveau
bonjour à tous,

voila j'ai pu a l'aide de recherche sur le net de trouver des code en VBA pour convertir des colonne contenants des date stocké en format texte ainsi que des colonnes de nombre stocké aussi en format texte le souci est lors de l'exécution des deux macro (voir plus bas) y'a une lenteur de l'ordre de 6 à 7 second.

ma question est es qu'il ya un moyen pour les rendre plus rapide sachant que mon fichier contient approximativement 90 000 lignes.

merci par avance

-Code pour convertir Date🙁 colonnes concernés H et I)

Sub convdate()

Application.ScreenUpdating = False

Dim d&, tablo, p&, t&, j&, pablo
d = [h1000000].End(xlUp).Row
tablo = Application.Transpose(Range("h1:h" & d))
On Error Resume Next 'si toutes les valeurs ne sont pas des dates
For p = 2 To d
tablo(p) = CDbl(CDate(tablo(p)))
Next
With [h1].Resize(d)
.NumberFormat = "dd/mm/yyyy" 'ou autre format Date
.Value = Application.Transpose(tablo)
End With
t = [i1000000].End(xlUp).Row
pablo = Application.Transpose(Range("i1:i" & t))
On Error Resume Next 'si toutes les valeurs ne sont pas des dates
For j = 2 To t
pablo(j) = CDbl(CDate(pablo(j)))
Next
With [i1].Resize(t)
.NumberFormat = "dd/mm/yyyy" 'ou autre format Date
.Value = Application.Transpose(pablo)
End With
Application.ScreenUpdating = True
End Sub



-code pour convertir nombre: ( colonnes concernés J et k)

Sub convNbr() 'remplace les virgules par des points
Application.ScreenUpdating = False

Dim i As Long, oDat()
oDat = Columns("j:j").Value
For i = 1 To UBound(oDat, 1)
oDat(i, 1) = Replace(oDat(i, 1), ",", ".")
Next i
Columns("j:j").NumberFormat = "0.00"
Columns("j:j").Value = oDat
Columns("k:k").NumberFormat = "0.00"
Columns("k:k").Value = oDat

Application.ScreenUpdating = True

End Sub
 
Re : convertir date et nombre stocké en format texte

Bonsour®
pour les dates
sélectionner la colonne à convertir
menu > Données > Convertir
à l'étape 3 sélectionner le Format lu : MJA ?
Terminer
éventuellement reproduire la manipulation pour une autre colonne

pour les séparateurs décimaux
sélectionner la colonne à modifier
Edition
rechercher : , (virgule)
remplacer : . (point)
remplacer Tout

en cas de résultats satisfaisants
recommencer ces opérations en activant l'enregistreur de macro !
 
- 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

Réponses
33
Affichages
2 K
Réponses
7
Affichages
533
Réponses
2
Affichages
1 K
Réponses
3
Affichages
852
Retour