Decouper chaque addition dans une somme

Résolu
stephane -  
 stephane -
Bonjour,

un casse tête pour les pros que vous êtes !

J'ai un logiciel tiers que m'extrait une colonne avec des sommes

exemple de ce que contiens une cellule dans cette colonne
=1.7*3.3+2.5*3.3+3.8*3.3+2.7*3.3+4.4*3.3+1.1*3.3+1.7*3.3
nota important le nombre de somme dans mes cellules n'est pas contant

1er temps, je voudrais isoler chaque sommes
"donnée" "convertir" avec le "+" comme séparateur ferrai l'affaire sauf que le première cellule garde le "=" et ca me gène
avez vous une solution ?

2eme temps, je voudrai supprimer le *3.3
il faudrait donc supprimer tout ce que se trouve après le * dans chaque cellule
(nota on ne peut pas s'appuyer sur le format de 3 caractères (3.3) après le "*" c'est variable, ca pourrai être 3.3 ou 6800 ou 54 par contre tout ce qui se situe après le "*" peut être supprimé )

le but de tout ceci étant d'obtenir sur une ligne une suite de cellule comme ceci
1.7 / 2.5 / 3.8 / 2.7 / 4.4 / 1.1 / 1.7

je ne sait pas si c'est possible, mais l'idéal serai une méthode qui sans passer par "donnée" "convertir", permette de faire tout ca en une foi?

merci a ceux qui se penchent sur mon problème

stephane
A voir également:

4 réponses

PHILOU10120 Messages postés 6445 Date d'inscription   Statut Contributeur Dernière intervention   824
 
Bonjour Stephane

En cellule B1 mettre cette formule

=DROITE(GAUCHE(A1;TROUVE("-";SUBSTITUE($A$1;"*3.3+";"-";1);1)-1);3)

En C1 la formule

=DROITE(GAUCHE($A$1;TROUVE("-";SUBSTITUE($A$1;"*3.3+";"-";COLONNE()-1);1)-1);3)

à tirer jusqu'à la cellule H1

En H1 modifier la formule comme ceci

=DROITE(GAUCHE($A$1;TROUVE("-";SUBSTITUE($A$1;"*3.3";"-";COLONNE()-1);1)-1);3)


A adapter pour 6800 et 54 à la place de 3.3

C'est en forgeant que l'on devient forgeron. -   C'est au pied du mur que l'on voit le maçon - on apprend toujours de ses erreurs
0
Vaucluse Messages postés 26496 Date d'inscription   Statut Contributeur Dernière intervention   6 438
 
Bonjour pour traiter un champ, une solution:
si on commence en A1 en B1 à tirer sur la hauteur

=SUBSTITUE(SUBSTITUE(A1&"+";"*3.3+";" ");"=";"")

ensuite copier B :B et faire un collage spécial valeur sur C
la colonne C peut alors être traité par convertir avec le blanc pour délimiter

ou encore:
  • sélectionner A:A
  • touche ctrl et touche H
  • remplacer: taper *3,3+
  • par: taper un blanc

et refaire la même opération avec
  • remplacer taper =
  • par ne rien mettre


et on retrouve la même colonne que C


crdlmnt
0
stephane
 
merci Vaucluse et Philou,
vos 2 approches sont très intéressantes

philou ca fonctionne si ma première formule n'a pas de "="
si j'utilise avant =SUBSTITUE(FORMULETEXTE(A1);"=";"") ca ne fonctionne pas non plus.
Je suis contrant de faire:
une première colonne avec =SUBSTITUE(FORMULETEXTE(A1);"=";"")
une deuxième colonne copier coller valeur
puis je mets ta formule que j'adapte
ce qui m'embête c'est que je gère pas "le nombre de somme" (modifier a chaque ligne la formule de la dernière colonne est problématique)
De plus tes $ dans ta formule m'empêche de tirer vers le bas pour l'ensemble de la colonne
0
stephane
 
Vaucluse en B:B moi ca me donne

un résultat "#valeur!" (si dans A1 j'ai un "=")
un résultat "Faux" si j'ai pas de "="
mais avec ce que tu m'as expliqué hier, moi je peux faire comme ca
en A1 j'ai
=1.1*3.3+1.2*3.3+1.3*3.3+1.4*3.3+1.5*3.3+1.6*3.3+1.7*3.3
en B1(je vire le "=")
=SUBSTITUE(FORMULETEXTE(A1);"=";"")
en C1 (je vire le *3.3+)
=SUBSTITUE(B1;"*3.3+";" ")
en D1 (je vire le "*3.3")
=SUBSTITUE(C1;"*3.3";" ")
en E1 je fais copier coller valeur
en F1...L1 je fais le convertir
je me rend compte que a partir de C1,
je ne fais rien de mieux que ce que tu faisait dans ta 2eme solution avec "remplacer"
Mais au moins avec "convertir" ca gére toutes les sommes
ca reste dommage d'avoir a faire toute ces manip ...
merci encore
0