XL 2019 Nombre stocké sous forme de texte

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

  • Classeur1.xlsx
    9.2 KB · Affichages: 22

Etoto

XLDnaute Barbatruc
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

  • Classeur1 (1).xlsm
    17.5 KB · Affichages: 6
Dernière édition:

job75

XLDnaute Barbatruc
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

  • Convertir(1).xlsm
    16.9 KB · Affichages: 12

Etoto

XLDnaute Barbatruc
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 ;) 🙂
 

Discussions similaires

Statistiques des forums

Discussions
312 113
Messages
2 085 426
Membres
102 888
dernier inscrit
medoit