Nombre d'occurence sur plusieurs colonnes et lignes

Y compris Power BI, Power Query et toute autre question en lien avec Excel
Répondre
S
Startinov
Membre habitué
Membre habitué
Messages : 68
Inscrit le : 3 janvier 2017
Version d'Excel : 2013 FR,

Message par Startinov » 16 novembre 2017, 18:32

Pourriez-vous, s'il vous plait, me donner des pistes pour développer un code VBA qui permet de faire le suivant :

Dans un tableau à plusieurs colonnes, j'ai intérêt aux 3 colonnes suivantes :



Crées envoyés reçus

12/07/2017 14/07/2017 14/08/2017
12/07/2017 16/07/2017 14/09/2017
12/08/2017 14/09/2017 16/09/2017
12/09/2017 14/09/2017 14/10/2017
12/09/2017 14/10/2017 14/11/2017
12/10/2017 14/11/2017 14/11/2017

Je voudrais calculer d'abord sur tout le tableau, le numéo de semaine pour chaque date (NO.SEMAINE.ISO()) pour avoir un truc comme cela .. le code ne doit pas être figé par le nombre de ligne car ça change avec le temps

numéro semaine
Crées envoyés reçus

52 52 54
52 63 63
54 57 63
63 63 63


A partir de ceci je crée un tableau comme ça :

crées envoyés reçus
semaine 52 2 1 0

semaine 54 1 0 1

semaine 63 1 2 3



Auriez-vous, s'il vous plait, l'amabilité de me proposer des solutions ?
Avatar du membre
James007
Fanatique d'Excel
Fanatique d'Excel
Messages : 12'007
Appréciations reçues : 421
Inscrit le : 30 août 2014
Version d'Excel : 2007 EN

Message par James007 » 17 novembre 2017, 08:08

Bonjour,

Ta requête est quelque peu ... confuse ...

Pourrais-tu joindre un fichier ...???
A+

:)

Quand on n’a qu’un marteau, tous les problèmes deviennent des clous…
S
Startinov
Membre habitué
Membre habitué
Messages : 68
Inscrit le : 3 janvier 2017
Version d'Excel : 2013 FR,

Message par Startinov » 17 novembre 2017, 10:33

Bonjour,

Merci de votre réponse...

J'ai essayé d'expliquer mieux la requête dans le fichier en pj.

Voir svp la feuille 1 et 2...
Explication.xlsx
(11.87 Kio) Téléchargé 18 fois
Avatar du membre
78chris
Passionné d'Excel
Passionné d'Excel
Messages : 5'622
Appréciations reçues : 423
Inscrit le : 9 juillet 2017
Version d'Excel : 2010 à 2019 + 365

Message par 78chris » 17 novembre 2017, 11:08

Bonjour

Formule matricielle
Semaines.xlsx
(19.47 Kio) Téléchargé 26 fois
Chris
Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson.
Confucius
S
Startinov
Membre habitué
Membre habitué
Messages : 68
Inscrit le : 3 janvier 2017
Version d'Excel : 2013 FR,

Message par Startinov » 17 novembre 2017, 11:12

Puissé-je vous expliquer comment je suis reconnaissant pour vous.

Merci du fond de mon coeur
S
Startinov
Membre habitué
Membre habitué
Messages : 68
Inscrit le : 3 janvier 2017
Version d'Excel : 2013 FR,

Message par Startinov » 17 novembre 2017, 11:28

Juste une question en rapport avec cela :

Comment on fait en VBA pour appliquer cette formule à un tableau ?
En effet, le tableau que je vous ai envoyé en pièce jointe je l'ai mis à titre indicatif. Car concrétement, les lignes augmentent au fur et à mesure des enregistrements..

Concrétement :

Comment dire un truc comme ceci en VBA :

Tant que le nombre des lignes du tableau existent
Fait :
La formule matricielle que vous m'avez donné...


En fait mon vrai tableau est celui-là :
Les trois colonnes concernées sont Q et R et S.
Un exemple xlsx.xlsx
(70.85 Kio) Téléchargé 23 fois
Avatar du membre
78chris
Passionné d'Excel
Passionné d'Excel
Messages : 5'622
Appréciations reçues : 423
Inscrit le : 9 juillet 2017
Version d'Excel : 2010 à 2019 + 365

Message par 78chris » 17 novembre 2017, 12:55

Re

Les dates du tableaux sont au format texte : donc on ne peut rien calculer si on ne les convertit pas en date et si on ne supprime pas les #NA.

Les matricielles sur de gros volumes ça va ramer

Une autre proposition avec 3 TCD, une synthèse prenant sa source dans les TCD et un graphique associé.

Idéalement mettre la synthèse et le graphique sur un autre onglet que les TCD.
Semaines2.xlsx
(91.33 Kio) Téléchargé 24 fois
Chris
Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson.
Confucius
S
Startinov
Membre habitué
Membre habitué
Messages : 68
Inscrit le : 3 janvier 2017
Version d'Excel : 2013 FR,

Message par Startinov » 17 novembre 2017, 13:36

Sincèrement merci..
Si vous me permettez, je me demande seulement si cette solution pourraît s'adapter à mon besoin suivant :

Le tableau excel n'est qu'un fichier excel extrait à chaque fois que je veux faire apparaître la synthèse d'une application métier de l'entreprise, et c'est dans cette dernière que l'on crée les enregistrements des rapports au cours de la semaine.

D'abord, un de nos amis sur ce forum, m'avait proposé de créer un fichier qui contient une macro qui copie la première feuille du fichier que je télécharge ( autrement dit qui copie le tableau) dans un classeur contenant dans sa deuxième feuille le code qui permet de faire les calcul et les graphes.

Donc le problème du changement du fichier (tableau) à chaque fois est résolu.

Sur la deuxième partie, c'est à dire celle qui correspont au sujet de cette discussion :

Si je ne me trompe pas, les tableaux croisés dynamiques que vous aviez eu l'amabilité de me donner ne peuvent pas s'adapter à chaque fois que l'on télécharge un nouveau tableau.
Startinov_appli.xlsm
(20.97 Kio) Téléchargé 22 fois
Avatar du membre
78chris
Passionné d'Excel
Passionné d'Excel
Messages : 5'622
Appréciations reçues : 423
Inscrit le : 9 juillet 2017
Version d'Excel : 2010 à 2019 + 365

Message par 78chris » 17 novembre 2017, 13:57

Re

Un TCD a une source : il suffit de ne pas détruire la source et d'en changer le contenu.

On peut créer des TCD, GCD qui puisent dans des classeurs séparés qu'on écrase au fil du temps : il faut juste garder le même nom au classeur de data et le stocker dans le même dossier que le classeur d'analyse et, pour gérer le temps, travailler sur une arborescence de dossiers : on peut placer, chaque période, une copie des 2 classeurs dans le dossier ad hoc, les data étant celles de la période concernée.

Pour les tableaux d'analyse (tableau de suivi, tableau de reporting ou tableau de bord), je déconseille de refaire les TCD et autres analyses même par code. Un bon tableau de bord est un objet complexe et élaboré qu'on ne reconstruit pas tout le temps...

Tout doit être conçu pour traiter les nouvelles données par simple actualisation (qui peut être paramétrée dans les TCD pour se faire à l'ouverture du classeur.

Avoir du code pour importer, un autre pour analyser est contreproductif à mon avis.

J'ai oublié dans mon exemple : on peut créer
- un segment ou une chronologie connectée aux 3 TCD pour filtrer les semaines à afficher dans les TCD,
- un segment pour la synthèse
- un bout de code pour synchroniser les 2 afin de limiter le graphique à quelques semaines
Chris
Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson.
Confucius
S
Startinov
Membre habitué
Membre habitué
Messages : 68
Inscrit le : 3 janvier 2017
Version d'Excel : 2013 FR,

Message par Startinov » 17 novembre 2017, 16:48

Un TCD a une source : il suffit de ne pas détruire la source et d'en changer le contenu.

Qu'est ce que vous entendez par une source : Est-ce le numéro de la feuille ?

Si c'était cela, quand je change le tableau de la feuille 1 avec une autre, juste pour tester.. rien ne bouge sur le TCD.

De plus, comment avez-vous fait, s'il vous plait pour les :
poser ces intervalles de semaines :

30/01/2017 - 05/02/2017
06/02/2017 - 12/02/2017
20/02/2017 - 26/02/2017

Car, bien sûr qu'ils vont changer avec le temsp ...
Répondre
  • Sujets similaires
    Réponses
    Vues
    Dernier message