OVH Cloud OVH Cloud

regroupement de statistiques par date

4 réponses
Avatar
Flag
Bonjour,

J'ai un fichier Excel avec le contenu suivant:

A b c
d ...
date produits configuration 1 configuration 2
config 3 etc
1 01-01-05 A 60R ROP8
2 01-01-06 A 60R ROP6
3 01-01-07 A 50N TIC5
4 01-01-10 A 50N TIC5
5 01-01-05 b 11Z FOU1
6 01-05-24 b 11Z FOU1
.
. Note: le nombre de configurations (colonnes) est variable. Le nombre de
ligne peut être de près de 65 000.
.
Je veux regrouper les données par produit et présenter la date de début et
de fin de chacune des configurations (un onglet par configuration) comme
l'exemple suivant:

Onglet 2 pour la configuration 2
A b c
d
1 Produits configuration 2 date début date fin
2 A 60R 01-01-05 01-01-06
3 A 50N 01-01-07 01-01-10
4 b 11Z 01-01-05 01-05-24
5
6

Onglet 2 pour la configuration 2
A b c
d
1 Produits configuration 2 date début date fin
2 A ROP8 01-01-05 01-01-05
3 A ROP6 01-01-06 01-01-06
4 A TIC5 01-01-07 01-01-10
5 b FOU1 01-01-05 01-05-24
6

Est-ce que quelqu'un peut m'aider à trouver une solution???
La solution peut être en VBA même si je ne suis pas un expert......
Merci pour votre précieuse collaboration.....

Flag

--
Flag
Excel 2002
Windows 2000

4 réponses

Avatar
abcd
as-tu déjà essayé de voir si un tableau croisé dynami que ne te convenait
pas ? Va lire l'aide de cette fonctionnalité pour voir si ça n e
suffirait pas, puis reviens ici si nécessaire.
Avatar
Trirème
Hello Flag,

Hello aussi abcd, j'aime bien les TCD mais les 65000 lignes risquent
d'exploser le compteur du TCD bloqué à 8000. Et puis la présentation ne
sera pas celle souhaitée.

Pour un dépannage, j'ai une manip qui vaut le coup si elle est à usage
unique et s'il n'y a pas trop de colonnes de configurations, sinon il
faudra appeler le banc de macro ;-) Moi je pratique très (très) peu.

1er TEMPS : PREPARATION

Dupliquer la feuille des données (par sécurité).

Insérer 3 colonnes vides entre date et configuration 1

Nommer les nouveaux en-têtes Configuration 1, DATE DEBUT et DATE FIN

Pas obligatoire, mais plus clair pour la compréhension, nomme les
colonnes date, produit et configuration 1, de la ligne 2 à la ligne la
plus élevée des données.
Ex: dat, prod, conf
Chacune des colonnes nommées doit avoir la même taille.

Sous la cellule Configuration 1 (qui doit être la cellule C2) écrire
ÞCALER(C2;;EQUIV($C$1;$D$1:$IV$1);;)

Sous la cellule DATE DEBUT qui est donc la 4ème colonne, écrire la
formule matricielle (Ctrl + Maj + Enter)
=MIN(SI(prod²;SI(C2=conf;dat;"")))

Sous la cellule DATE FIN qui est donc la 5ème colonne, écrire la formule
matricielle
=MAX(SI(prod²;SI(C2=conf;dat;"")))

Mettre les colonnes DATE DEBUT et DATE FIN au format date

Recopier les 3 formules jusqu'en bas (vers les 65000 lignes).

2ème TEMPS : SELECTION

Pour i allant de 1 à n configurations :

Remplacer l'en-tête Configuration 1 par configuration i (i étant un
nombre de 1 à n, la première fois c'est déjà à configuration 1, voir
plus haut)

3ème TEMPS : EXTRACTION

Dupliquer à nouveau la feuille

La nommer configuration i (facultatif)(i étant un nombre de 1 à n)

Copier coller en valeur sur place les colonnes C D et E

Supprimer les colonnes de droite à partir de la colonne F

Données-Filtre-Filtre élaboré, filtrer sur place, zone de critère =
colonne B:C, cocher Extraction sans doublon
[Le filtre élaboré ne marche pas si je ne colle pas en valeur, d'où la
duplication]

Eventuellement, tout sélectionner pour le copier dans une feuille
vierge, à renommer.

Itération i suivante

FIN

Laborieux non ? Mais ça doit se macrotiser à l'aise... Quand on sait.
Cordialement.

Trirème

Bonjour,

J'ai un fichier Excel avec le contenu suivant:

A b c
d ...
date produits configuration 1 configuration 2
config 3 etc
1 01-01-05 A 60R ROP8
2 01-01-06 A 60R ROP6
3 01-01-07 A 50N TIC5
4 01-01-10 A 50N TIC5
5 01-01-05 b 11Z FOU1
6 01-05-24 b 11Z FOU1
..
.. Note: le nombre de configurations (colonnes) est variable. Le nombre de
ligne peut être de près de 65 000.
..
Je veux regrouper les données par produit et présenter la date de début et
de fin de chacune des configurations (un onglet par configuration) comme
l'exemple suivant:

Onglet 2 pour la configuration 2
A b c
d
1 Produits configuration 2 date début date fin
2 A 60R 01-01-05 01-01-06
3 A 50N 01-01-07 01-01-10
4 b 11Z 01-01-05 01-05-24
5
6

Onglet 2 pour la configuration 2
A b c
d
1 Produits configuration 2 date début date fin
2 A ROP8 01-01-05 01-01-05
3 A ROP6 01-01-06 01-01-06
4 A TIC5 01-01-07 01-01-10
5 b FOU1 01-01-05 01-05-24
6

Est-ce que quelqu'un peut m'aider à trouver une solution???
La solution peut être en VBA même si je ne suis pas un expert......
Merci pour votre précieuse collaboration.....

Flag



Avatar
Modeste
Trirème wrote:
mais les 65000 lignes risquent
d'exploser le compteur du TCD bloqué à 8000.


ah bon ???? c'est nouveau ça !!!
8000 c'est le nombre d'éléments résultants dans le TCD, pas le nombre
d'éléments entrant...
c-a-d un TCD résultant sous forme de tableau avec 8 (ou 80)colonnes et 1000
(ou 100)lignes (entete et champs calculés compris)

@+

--
http://viadresse.com/?94912042

Avatar
Trirème
8000 c'est le nombre d'éléments résultants dans le TCD, pas le nombre
d'éléments entrant...
Oui, ça je sais. Ce sera selon la diversité des données. Mais par

expérience, je sais que lorsqu'on a des dates dans un jeu de données,
elles sont souvent différentes. Peut être pas 8000, mais combinées aux
noms de configurations...

Pour aller dans ton sens et celui d'abcd, avec les données fournies, on
obtient bien le résultat attendu avec un TCD (vous vous en doutiez)(avec
n TCD en fait).

Et pour finir. Ça m'embête d'être pris en flagrant délit de "bricolage"
car je suis plutôt un adepte du TCD.

Cordialement
Trirème