[Excel] extraction de données

Fermé
Tibal Messages postés 3 Date d'inscription mardi 6 juin 2006 Statut Membre Dernière intervention 7 juin 2006 - 6 juin 2006 à 13:32
gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 - 8 juin 2006 à 18:31
Bonjour,


je suis en train d'exploiter un tableau excel assez grand (environ 10000 lignes) et que je devrai faire souvent, il me faut donc automatiser mes extractions de données.

ce tableau provient d'un document pdf exporté en txt puis importé sous excel.
les données sont donc un peu dispersées.

Les données correspondent a des ingrédient introduits dans une pate.
Sur un ingrédient on peut avoir différents lots dans une meme pate
or la valeur qui m'intéresse est la somme sur tous les lots pour 1 pate. (sachant que j'ai un nombre inconnu de pate dans mon tableau et que le nombre de lot par pate est variable.)


Voila comment se présente ma colonne de valeur :

dsdv
dvd


vdv


21
54
564
24
45
214
cdcdscdc


dsfs


dsf

54
54
54
21
54
647
78
1323
.......................;;;



les caractères étant des chaines de texte placées un peu aléatoirement.

je voudrai sommer les nombres consécutifs et qu'il m'affiche dans une autre colonne la somme obtenue a chaque fois.


Si quelqu'un a des idées, sachant que je suis totalement novice en VBA.


Merci d'avance


ps 1 : la fonction NB() de Excel qui renvoie 1 si c'est un chiffre et 0 sinon pourrait etre utile

ps 2 : si c'est pas clair n'hésitez pas à demander des explications.
A voir également:

6 réponses

gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 4 688
8 juin 2006 à 18:31
bonjour

C'est sympa d'avoir un message comme çà !

Le plaisir est aussi pour moi d'avoir partagé avec toi.

à bientôt peut-être pour un nouvel échange.

1
gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 4 688
6 juin 2006 à 15:15
bonjour

est-ce ainsi que tu veux le résultat ?

j'ai mis "<=>" entre les colonnes pour visualiser.


dsdv <=> 0
1dvd <=> 0
<=> 0
<=> 0
vdv <=> 0
<=> 0
<=> 0
21 <=> 21
54 <=> 75
564 <=> 639
24 <=> 663
45 <=> 708
214 <=> 922
cdcdscdc <=> 922
<=> 922
<=> 922
dsfs <=> 922
<=> 922
<=> 922
dsf <=> 922
<=> 922
54 <=> 976
54 <=> 1030
54 <=> 1084
21 <=> 1105
54 <=> 1159
647 <=> 1806
78 <=> 1884
1323 <=> 3207
0
gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 4 688
6 juin 2006 à 15:19
bonjour


ou bien ceci :

dsdv <=> 0
1dvd <=> 0
<=> 0
<=> 0
vdv <=> 0
<=> 0
<=> 0
21 <=> 21
54 <=> 75
564 <=> 639
24 <=> 663
45 <=> 708
214 <=> 922
cdcdscdc <=> 0
<=> 0
<=> 0
dsfs <=> 0
<=> 0
<=> 0
dsf <=> 0
<=> 0
54 <=> 54
54 <=> 108
54 <=> 162
21 <=> 183
54 <=> 237
647 <=> 884
78 <=> 962
1323 <=> 2285
0
Tibal Messages postés 3 Date d'inscription mardi 6 juin 2006 Statut Membre Dernière intervention 7 juin 2006
6 juin 2006 à 17:35
Bonjour


en fait c'est la deuxième proposition dont j'ai besoin, je saurai me débrouiller après je pense.


Sinon l'idéal serait de mettre des 0 partout sauf à la dernière somme de chaque série.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 4 688
7 juin 2006 à 07:55
bonjour

voici le tableau avec la formule qui est à recopier sur toutes les lignes (Ctrl + B avec sélection colonne).

elle suppose qu'il y a une ligne titre et commence en ligne 2.

(désolé pour la présentation, mais la suppression des espaces est pénalisante.)


col A col B
_______ | _____ |
données | calcul | formule
dsdv | 0 | =SI(ESTERREUR(CNUM(A2));0;CNUM(A2)+B1)
dvd | 0 |
| 0 |
| 0 |
vdv | 0 |
| 0 |
| 0 |
21 | 21 |
54 | 75 |
564 | 639 |
24 | 663 |
45 | 708 |
214 | 922 |
cdcdscdc | 0 |
| 0 |
| 0 |
dsfs | 0 |
| 0 |
| 0 |
dsf | 0 |
| 0 |
54 | 54 |
54 | 108 |
54 | 162 |
21 | 183 |
54 | 237 |
647 | 884 |
78 | 962 |
1323 | 2285 |

Pour n'avoir que la dernière somme, il faut une troisième colonne
avec la formule en ligne 2 à recopier jusqu'en bas:

=SI(ESTERREUR(CNUM(A3));CNUM(B2);"")


bon courage si c'est ce que tu voulais.
0
Tibal Messages postés 3 Date d'inscription mardi 6 juin 2006 Statut Membre Dernière intervention 7 juin 2006
7 juin 2006 à 10:25
Je t'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaime!!!




c'est exactement ce qu'il me fallait et pas besoin d'aller sur VBA en plus


un très très grand merci, ca me sauve la vie!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!


Tibal
0