XL 2019 Nombre stocké sous forme de texte

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

netparty

XLDnaute Occasionnel
Bonjour à tous

Je sollicite votre aide pour mon problème, dans ma feuille j'importe des données depuis un fichier texte.
Mais une fois mes données importées, elles ne sont pas au bon format je suis obligé de cliquer sur le petit triangle vert pour les convertir en nombre.

Auriez-vous une petite macro qui permet de convertir cela.

Merci d'avance
 

Pièces jointes

Bonjour,

La voici dans le fichier, si tes calcules renvoient erreur faut juste changer le séparateur de décimale. Et tu n'as cas modifier dans la macro les cellules sélectionnées pour devenir des nombres. Et juste les nombres fonctionnent bien mais les triangles verts n'ont pas disparu. Mais pour les faire disparaître tu sélectionne toutes les erreurs, tu appuyes sur une seule pour la convertir en nombre et automatiquement toutes les erreurs disparaitront.
 

Pièces jointes

Dernière édition:
Bonjour netparty, Etoto,
VB:
Sub Convertir()
Dim ncol%, tablo, i&, j%
With [A1].CurrentRegion 'matrice, plus rapide
    ncol = .Columns.Count
    If ncol = 1 Then ncol = 2
    tablo = .Resize(, ncol) 'matrice, plus rapide, au moins 2 éléments
    For i = 1 To UBound(tablo)
        For j = 1 To ncol
            If IsNumeric(CStr(tablo(i, j))) Then tablo(i, j) = CDbl(tablo(i, j))
    Next j, i
    .Resize(, ncol) = tablo 'restitution
End With
End Sub
A+
 

Pièces jointes

Bonjour netparty, Etoto,
VB:
Sub Convertir()
Dim ncol%, tablo, i&, j%
With [A1].CurrentRegion 'matrice, plus rapide
    ncol = .Columns.Count
    If ncol = 1 Then ncol = 2
    tablo = .Resize(, ncol) 'matrice, plus rapide, au moins 2 éléments
    For i = 1 To UBound(tablo)
        For j = 1 To ncol
            If IsNumeric(CStr(tablo(i, j))) Then tablo(i, j) = CDbl(tablo(i, j))
    Next j, i
    .Resize(, ncol) = tablo 'restitution
End With
End Sub
A+
Cool, ça ce voit que tu as plus d'expérience que moi 😉 🙂
 
- 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
8
Affichages
703
Réponses
8
Affichages
391
Réponses
10
Affichages
365
Retour