web-dev-qa-db-fra.com

Excel: Comment convertir "chaîne" en "nombre"?

J'ai un utilisateur avec une requête d'une base de données SQL qui renvoie une série de chaînes sous cette forme:

000123123.23000
000123123.23000
000123123.23000
000123123.23000
000123123.23000

Ce sont vraiment des nombres, mais ils ne peuvent pas être additionnés. La bonne façon de résoudre ce problème pourrait être de transtyper les données dans la requête SQL, mais le visualiseur de requêtes Excel ne pourra pas les afficher. Comme solution de contournement je fais

 = <CELL> +1 -1.

Y a-t-il une solution plus élégante?

17
SirStan

Je pense que la fonction value peut vous être utile

 = VALUE(< CELL >)

PD:

En espagnol, nous utilisons la fonction VALOR:

 = VALOR(< CELL >)

je pense que ça devrait être pareil en anglais

27

J'utilise cette petite macro

Sub txttonum()
    For Each tcell In Selection.Cells
        If TypeName(tcell.Value) = "String" Then
            tcell.Value = Val(tcell.Value)
        End If
    Next
End Sub

Qui convertit toutes les cellules en surbrillance en nombres si ce sont des chaînes

1
Col

J'ai eu le même problème, mais la fonction VALUE ne fonctionnait pas dans mon fichier tsv. Mais un petit tour a fait le boulot:

  1. sélectionner la colonne avec les nombres en format texte

  2. Ctrl+F -> remplacer . par ,

(Normalement, je détesterais de telles solutions, mais comme je l'ai dit, je les publie simplement ici parce que la façon "normale" de résoudre ce problème ne me convenait pas.)

0
Karl