Bonjour à tous et à toutes
Je suis confrontée à un problème que je n'arrive pas à résoudre, et pour lequel jusqu'à présent personne n'a pu me venir en aide
Voici mon probleme:
J'aimerais calculer la variance des prix unitaires de vente de chaque produit vendu par l'entreprise. Je possède pour cela une base de donnée avec toutes les lignes de facturation effectuées par la l'entreprise. Actuellement la base fait plus de 300.000 lignes, chaque ligne étant une ligne de facturation presentée comme suit:
colonne1: reference du produit
colonne2: Quantité vendue (sur cette ligne de facturation)
colonne3: montant en euros ( pour la quantité de produit vendu)
colonne4: Prix Unitaire du produit pour cette ligne de facturation ( que j'ai calculé: montant/quantité)
cette base est une base importée sur excel et actualisée via une connexion ODBC
j'ai premièrement pensé le faire via un tableau croisé dynamique... or le calcul de la formule de variance d'excel ne permet pas de prendre en compte la colonne quantité.
par exemple si j'avais
1€
1€
2€
2€
2€
var(1,1,2,2,2) est faisable
mais moi j'ai
prix quantité
1€ 2
2€ 3
donc la formule n'est pas applicable et il n'est donc pas possible de le faire directement par un tableau croisé dynamique.
J'ai donc pensé le faire en rajoutant une colonne QuantitéTotale de produit vendu (quelque soit le prix) (grace à un somme.si avec pour critère le code produit), une colonne PrixMoyen par produit( grace à un somme.si qui additione tous les montants pour un meme produit et je divise cette somme par la quantité totale vendue de ce produit)
Grace à ces deux colonnes je serais en mesure d'en creer une troisième qui serait:
(Quantité/QuantitéTotale)*(PrixUnitaire-PrixMoyen)^2
Et là un beau tableau dynamique qui me sommerait cette derniere colonne pour chaque produit me donnerait la fameuse variance que je recherche et qui s'actualiserait à chaque actualisation de la base de donnée
Mais vu la taille de la base mon ordinateur met des heures à effectuer les calculs, heures que je pourrais consacrer à vernir mes ongles... mais ca ne serait pas tres serieux!
Je penses que vu la taille de la base un programme VBA ne serait pas non plus la meilleure solution...
Si quelqu'un arrive à déchiffrer mon explication et avait une idée pour m'aider à calculer ces variances beaucoup plus rapidement je ferais un gros bisou sur son pseudo!!!!
(ci-joint une illustration de ma table en très très très réduite)
Je suis confrontée à un problème que je n'arrive pas à résoudre, et pour lequel jusqu'à présent personne n'a pu me venir en aide
Voici mon probleme:
J'aimerais calculer la variance des prix unitaires de vente de chaque produit vendu par l'entreprise. Je possède pour cela une base de donnée avec toutes les lignes de facturation effectuées par la l'entreprise. Actuellement la base fait plus de 300.000 lignes, chaque ligne étant une ligne de facturation presentée comme suit:
colonne1: reference du produit
colonne2: Quantité vendue (sur cette ligne de facturation)
colonne3: montant en euros ( pour la quantité de produit vendu)
colonne4: Prix Unitaire du produit pour cette ligne de facturation ( que j'ai calculé: montant/quantité)
cette base est une base importée sur excel et actualisée via une connexion ODBC
j'ai premièrement pensé le faire via un tableau croisé dynamique... or le calcul de la formule de variance d'excel ne permet pas de prendre en compte la colonne quantité.
par exemple si j'avais
1€
1€
2€
2€
2€
var(1,1,2,2,2) est faisable
mais moi j'ai
prix quantité
1€ 2
2€ 3
donc la formule n'est pas applicable et il n'est donc pas possible de le faire directement par un tableau croisé dynamique.
J'ai donc pensé le faire en rajoutant une colonne QuantitéTotale de produit vendu (quelque soit le prix) (grace à un somme.si avec pour critère le code produit), une colonne PrixMoyen par produit( grace à un somme.si qui additione tous les montants pour un meme produit et je divise cette somme par la quantité totale vendue de ce produit)
Grace à ces deux colonnes je serais en mesure d'en creer une troisième qui serait:
(Quantité/QuantitéTotale)*(PrixUnitaire-PrixMoyen)^2
Et là un beau tableau dynamique qui me sommerait cette derniere colonne pour chaque produit me donnerait la fameuse variance que je recherche et qui s'actualiserait à chaque actualisation de la base de donnée
Mais vu la taille de la base mon ordinateur met des heures à effectuer les calculs, heures que je pourrais consacrer à vernir mes ongles... mais ca ne serait pas tres serieux!
Je penses que vu la taille de la base un programme VBA ne serait pas non plus la meilleure solution...
Si quelqu'un arrive à déchiffrer mon explication et avait une idée pour m'aider à calculer ces variances beaucoup plus rapidement je ferais un gros bisou sur son pseudo!!!!
(ci-joint une illustration de ma table en très très très réduite)
Pièces jointes
Dernière édition: