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

remplacer le signe moins à droite par macro

6 réponses
Avatar
JCR
Bonjour à tous,


j'importe régulièrement des données texte et les nombres négatifs ont un
signe "-" à la droite des chiffres.

je pensais faire une macro du style :

For Each cell In Selection
cell.Value =
"=IF(RIGHT(cell.Value)=""-"",(""-""&SUBSTITUTE(cell.Value,""-"",""""))*1,cel
l.Value)"
Next cell

mais je sèche.

Si l'un de vous à une solution...

Merci

JC

6 réponses

Avatar
Sitting Hoax
Bonsoir,
For Each cell In Selection
If Right(cell.Value, 1) = "-" Then
cell.Value = Left(cell.Value, Len(cell.Value) - 1)
End If
Next cell
amicalement
Sitting Hoax

"JCR" <jcrsmwChezyahoo.fr> a écrit dans le message de news:

Bonjour à tous,


j'importe régulièrement des données texte et les nombres négatifs ont un
signe "-" à la droite des chiffres.

je pensais faire une macro du style :

For Each cell In Selection
cell.Value > "=IF(RIGHT(cell.Value)=""-"",(""-""&SUBSTITUTE(cell.Value,""-"",""""))*1,cel
l.Value)"
Next cell

mais je sèche.

Si l'un de vous à une solution...

Merci

JC




Avatar
JCR
Merci beaucoup, c'est parfait.

Cordialement

JCR

"Sitting Hoax" <http://cerbermail.com/?GSQ36o9bFb> a écrit dans le message
de news:%
Bonsoir,
For Each cell In Selection
If Right(cell.Value, 1) = "-" Then
cell.Value = Left(cell.Value, Len(cell.Value) - 1)
End If
Next cell
amicalement
Sitting Hoax

"JCR" <jcrsmwChezyahoo.fr> a écrit dans le message de news:

Bonjour à tous,


j'importe régulièrement des données texte et les nombres négatifs ont un
signe "-" à la droite des chiffres.

je pensais faire une macro du style :

For Each cell In Selection
cell.Value > >
"=IF(RIGHT(cell.Value)=""-"",(""-""&SUBSTITUTE(cell.Value,""-"",""""))*1,cel


l.Value)"
Next cell

mais je sèche.

Si l'un de vous à une solution...

Merci

JC








Avatar
JB
Bonjour


For Each c In Selection
If Right(c.Value, 1) = "-" Then c.Value = -Val(c.Value)
Next c

Cordialement JB
Avatar
JB
Bonjour,

For Each c In Selection
If Right(c.Value, 1) = "-" Then c.Value = -Val(c.Value)
Next c

Cordialement JB
Avatar
Sitting Hoax
Merci JB,
J'oublie toujours cette façon beaucoup plus élégante d'écrire les If Then
End If
;-)
Amicalement
Sitting Hoax

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

Bonjour,

For Each c In Selection
If Right(c.Value, 1) = "-" Then c.Value = -Val(c.Value)
Next c

Cordialement JB



Avatar
michdenis
Bonjour Sitting Hoax,

Élégant peut être !! Mais j'espère que l'usager n'utilise pas
la virgule comme séparateur décimale...sinon gare à la fonction Val()

;-))


Salutations!


"Sitting Hoax" <http://cerbermail.com/?GSQ36o9bFb> a écrit dans le message de news: %
Merci JB,
J'oublie toujours cette façon beaucoup plus élégante d'écrire les If Then
End If
;-)
Amicalement
Sitting Hoax

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

Bonjour,

For Each c In Selection
If Right(c.Value, 1) = "-" Then c.Value = -Val(c.Value)
Next c

Cordialement JB