Makamb
Messages postés9Date d'inscriptionmercredi 9 octobre 2013StatutMembreDernière intervention24 janvier 2014
-
24 janv. 2014 à 11:56
ucfoutu
Messages postés18038Date d'inscriptionlundi 7 décembre 2009StatutModérateurDernière intervention11 avril 2018
-
24 janv. 2014 à 13:43
Bonjour, chers amis.
En effet, j'utilise un logiciel de comptabilité qui est paramétré de telle sorte que le point (.) soit séparateur de millier. Il m'arrive parfois d'extraire certaines informations du logiciel vers un fichier Excel afin de faire certaines analyses.
le problème c'est que quand je fais l'extraction, tous les nombres restent tels avec le point comme séparateur de millier, ce qui fait que je ne peux pas les additionner ou faire quoique ce soit. existe t il une formule Excel qui va me permettre de retirer les Points (.) et avoir des valeurs en nombre au lieu de texte? j'ai déjà essayer avec "subtitute", "remplacer", "gauche", "droite" mais rien de bon. Aidez moi svp.
NB: on tient a garder le point comme séparateur dans le logiciel car il sert à d'autres personnes.
Makamb
Messages postés9Date d'inscriptionmercredi 9 octobre 2013StatutMembreDernière intervention24 janvier 2014 24 janv. 2014 à 12:06
Bien merci à tous qui avaient commencer à réfléchir pour moi. je viens de trouver l'une des solutions à mon problème.
en fait, il faut d'abord utiliser "subtitute" pour enlever les points (.) et après "CNUM" pour convertir le texte en nombre. on peut bien sur faire une imbrication des deux formules. merci encore les gars.
jordane45
Messages postés37726Date d'inscriptionmercredi 22 octobre 2003StatutModérateurDernière intervention27 septembre 2023342 24 janv. 2014 à 12:30
Bonjour,
Il n'y a pas de quoi...
Par contre... ce dont tu parles ici c'est de Formule... hors ce forum est principalement destiné à du DEV (donc pour office : du VBA ).
Voici un exemple de code ( en VBA donc) qui fait ce que tu demande :
Sub test()
For Each cell In Selection
Debug.Print "Valeur avant modif : " & cell.Value
CTP = modif_sep(cell.Value)
cell.Value = CTP
Debug.Print "Valeur Après modif : " & cell.Value
Next
End Sub
Function modif_sep(valCell As String, Optional sepAchanger = ".", Optional sepAutiliser = ",")
modif_sep = CDec(Replace(valCell, sepAchanger, sepAutiliser))
End Function
Makamb
Messages postés9Date d'inscriptionmercredi 9 octobre 2013StatutMembreDernière intervention24 janvier 2014 24 janv. 2014 à 12:47
pardon, il y a un dernier souci. lorsque la cellule est vide, j'ai un bug. Pourtant je sélectionne parfois une plage de cellule qui peut contenir des cellules vides. Que peut on faire pour le débogage?
ucfoutu
Messages postés18038Date d'inscriptionlundi 7 décembre 2009StatutModérateurDernière intervention11 avril 2018212 24 janv. 2014 à 13:43
Bonjour,pas sur de tout avoir deviné, mais ===>>
essaye ceci :
For i = 1 To 10 toto = Range("A" & i).Text If Not IsNumeric(toto) And toto <> "" Then Range("A" & i).Value = CDbl(Replace(toto, ".", "")) Range("A" & i).NumberFormat = "#0.00" End If Next
24 janv. 2014 à 12:30
Il n'y a pas de quoi...
Par contre... ce dont tu parles ici c'est de Formule... hors ce forum est principalement destiné à du DEV (donc pour office : du VBA ).
Voici un exemple de code ( en VBA donc) qui fait ce que tu demande :