Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

nombre-texte

13 réponses
Avatar
boblebob
bjr,
je cherche à transformer des "nombres-texte" en "vrai" nombre.
Et ça marche pas :

Dim C

For Each C In Selection.Range

If Not IsNumeric(C.Value) Then
IsNumeric (C.Value)
End If

Next C

une idée svp ?
merci
a+

3 réponses

1 2
Avatar
Ellimac
Ben fallait le dire tout de suite...

For Each c In Selection
c.Value = (Right(c.Value, 1) & Left(c.Value, Len(c.Value) - 1))
c.Value = c.Value + 0
Next

Camille


oui c'est ça j'ai des espaces après les nombre. En fait mon point de départ
est que j'ai des nombres écrit comme ceci :
33-
169,35-
4,12-
et je dois obtenir ceci :
-33
-169,35
-4,12
etc

je bloque...

merci par avance pour l'aide aportée
a+
"MichDenis" a écrit dans le message de news:

Dans tes cellules nombres tu dois avoir le caractère (code ascii 0)
Ce dernier est invisible car il représente un "espace" semblable à celui
généré par la touche "barre d'espacement"

L'insertion de ce caractère dans les données nombres est fréquent lorsque
l'on importe des data d'une application à l'autre.

Pour t'en défaire, utilise la fonction "Replace"
Range("A1:A10").Replace Chr(160), ""

Ensuite tu pourras créer et exécuter ta macro.



"boblebob" <a> a écrit dans le message de news:

bjr,
je cherche à transformer des "nombres-texte" en "vrai" nombre.
Et ça marche pas :

Dim C

For Each C In Selection.Range

If Not IsNumeric(C.Value) Then
IsNumeric (C.Value)
End If

Next C

une idée svp ?
merci
a+










Avatar
MichDenis
Excellente proposition de l'utilisation de la fonction de conversion CDBL().

Ma question : que se passerait-il si l'usager avait utilisé le "point" comme
séparateur décimale dans le panneau de configuration au lieu de la virgule ?

Je n'ai pas fait le test explicitement sur la problématique proposée, mais CDBL()
utilise le séparateur décimale du panneau de configuration... sinon semble-t-il, il
éprouve des difficultés !




"JB" a écrit dans le message de news:

Bonjour,

For Each c In Selection
c.Value = CDbl(c.Text)
Next c

JB


On 27 nov, 15:21, "boblebob" <a> wrote:
oui c'est ça j'ai des espaces après les nombre. En fait mon point de départ
est que j'ai des nombres écrit comme ceci :
33-
169,35-
4,12-
et je dois obtenir ceci :
-33
-169,35
-4,12
etc

je bloque...

merci par avance pour l'aide aportée
a+
"MichDenis" a écrit dans le message de news:




Dans tes cellules nombres tu dois avoir le caractère (code ascii 0)
Ce dernier est invisible car il représente un "espace" semblable à celui
généré par la touche "barre d'espacement"

L'insertion de ce caractère dans les données nombres est fréquent lorsque
l'on importe des data d'une application à l'autre.

Pour t'en défaire, utilise la fonction "Replace"
Range("A1:A10").Replace Chr(160), ""

Ensuite tu pourras créer et exécuter ta macro.

"boblebob" <a> a écrit dans le message de news:

bjr,
je cherche à transformer des "nombres-texte" en "vrai" nombre.
Et ça marche pas :

Dim C

For Each C In Selection.Range

If Not IsNumeric(C.Value) Then
IsNumeric (C.Value)
End If

Next C

une idée svp ?
merci
a+- Masquer le texte des messages précédents -


- Afficher le texte des messages précédents -



Avatar
boblebob
j'ai pas eu le temps de tester la réponse de JB et de Ellimac je vais
essayer demain.
En tout cas merci à eux !
"MichDenis" a écrit dans le message de news:

Excellente proposition de l'utilisation de la fonction de conversion
CDBL().

Ma question : que se passerait-il si l'usager avait utilisé le "point"
comme
séparateur décimale dans le panneau de configuration au lieu de la virgule
?

Je n'ai pas fait le test explicitement sur la problématique proposée, mais
CDBL()
utilise le séparateur décimale du panneau de configuration... sinon
semble-t-il, il
éprouve des difficultés !




"JB" a écrit dans le message de news:

Bonjour,

For Each c In Selection
c.Value = CDbl(c.Text)
Next c

JB


On 27 nov, 15:21, "boblebob" <a> wrote:
oui c'est ça j'ai des espaces après les nombre. En fait mon point de
départ
est que j'ai des nombres écrit comme ceci :
33-
169,35-
4,12-
et je dois obtenir ceci :
-33
-169,35
-4,12
etc

je bloque...

merci par avance pour l'aide aportée
a+
"MichDenis" a écrit dans le message de news:




Dans tes cellules nombres tu dois avoir le caractère (code ascii 0)
Ce dernier est invisible car il représente un "espace" semblable à
celui
généré par la touche "barre d'espacement"

L'insertion de ce caractère dans les données nombres est fréquent
lorsque
l'on importe des data d'une application à l'autre.

Pour t'en défaire, utilise la fonction "Replace"
Range("A1:A10").Replace Chr(160), ""

Ensuite tu pourras créer et exécuter ta macro.

"boblebob" <a> a écrit dans le message de news:

bjr,
je cherche à transformer des "nombres-texte" en "vrai" nombre.
Et ça marche pas :

Dim C

For Each C In Selection.Range

If Not IsNumeric(C.Value) Then
IsNumeric (C.Value)
End If

Next C

une idée svp ?
merci
a+- Masquer le texte des messages précédents -


- Afficher le texte des messages précédents -







1 2