Calcul nombre de territoires vendus / nombre de ventes - comment automatiser ?

agnesd

XLDnaute Occasionnel
Bonjour à tous,

Je m'adresse à vous car j'ai un calcul à faire sur plus de 1000 références, mais sur des valeurs changeantes.
Je m'explique : chaque produit a des pays co-fabricants différents, et les ventes réalisées sur ces territoires ne sont du coup pas considérées de la même manière que celles réalisées dans un pays où il n'y a pas d'interlocuteur commercial" direct ; par ailleurs, je cherche à comptabiliser le nombre de ventes réalisées en y soustrayant à la fois les territoires francophones (considérés comme plus faciles) et les territoires co-fabricants des produits - ce qui se recoupe parfois.

Toute idée la bienvenue !

Voici le fichier, j'ai mis en rouge les formules où je bloque, pour les autres, je suis passée par SOMME et NBVAL.

http://www.cjoint.com/?3HwkWsaRdGm

Merci à vous,

Agnès
 

Modeste

XLDnaute Barbatruc
Re : Calcul nombre de territoires vendus / nombre de ventes - comment automatiser ?

Bonjour Agnès,

Je crains de te froisser, mais ta formule ne peut décemment pas fonctionner: la syntaxe pour SOMME.SI est erronée (les deux plages doivent être de dimensions égales et la condition devrait être en seconde position, dans les arguments). Pour les 3 ET(), en fin de formule, à vue de nez, tu as dû oublier quelque chose comme NB.SI avant le second argument, à chaque fois!?

Par ailleurs, on a toujours un problème avec le QUEBEC en ligne 1 qui ne correspond à rien, dans les colonnes cofabricants (il y a bien le CANADA, mais dans ton contexte de travail, je ne sais pas si tu peux remplacer les "CANADA" des colonnes DF à DK par "QUEBEC", sans fausser l'interprétation des résultats :confused:)

Quand "SUISSE" figure parmi les 6 coproducteurs, de quels chiffres de vente ne faut-il pas tenir compte? Uniquement ceux de la Suisse romande ou alors on décompte les chiffres des trois régions linguistiques reprises en ligne1?

En annexe tu trouveras le dernier essai que j'ai réalisé ... avec une macro: avec des formules ça va devenir "monstrueux", je le crains (pour le fichier, autant que pour mon avant-dernier neurone)! Les chiffres de la pièce jointe sont à "coller" en colonne DM de ton tout dernier fichier.
Attention: ces chiffres ne pourront être considérés comme "fiables" que lorsque tu auras arrêté une position au sujet du Québec et de la Suisse (uniquement dans le cadre de ton fichier, j'entends :p)

Sur le principe, que dis-tu de travailler par macro? Ce fichier est mis à jour ... cinq fois par jour, deux fois par semaine, tous les mois, deux fois par an?
 

Pièces jointes

  • Ventes (agnesd).xlsx
    17.8 KB · Affichages: 34

agnesd

XLDnaute Occasionnel
Re : Calcul nombre de territoires vendus / nombre de ventes - comment automatiser ?

Bonjour et merci encore pour tous tes efforts.

J'ai remplacé Canada par Québec, j'ai réfléchi, cela peut être fait.

Et tu remarqueras qu'il est indiqué "Territoires" et non pas "pays", comme cela, nous ne froissons personne sur la question québécoise ! Pour la Suisse, c'est plus compliqué, j'ai réfléchi encore à la question. Il faudrait déduire les ventes des "3 Suisses" si "Suisse" figure parmi les co-fabricants.

Je vais intégrer ce à quoi tu es arrivé avec ta macro (!) et rectifier au mieux ma formule, je ne suis pas une vraie pro comme toi, loin de là, j'apprends et fais ce que je peux ! Les données pourraient être actualisées deux fois par an, a priori.

Très bon dimanche,

Agnès
 
Dernière édition:

Modeste

XLDnaute Barbatruc
Re : Calcul nombre de territoires vendus / nombre de ventes - comment automatiser ?

Bonsoir Agnès, le forum,

j'apprends et fais ce que je peux !
Nous en sommes tous là, ma pauv'dame :eek:

Guère eu de temps aujourd'hui! Avant d'aller coucher, j'ai fait tourner la macro pour les ventes hors "territoires" francophones et hors "cofabricants".

Je joins juste les résultats précédents, ainsi que les nouveaux. Dans la seconde colonne quelques cellules colorées (6 je pense) où les résultats sont différents ... Je te laisse le soin de vérifier, mais il semble bien que ce soient les ventes des "3 suisses" qui diffèrent!? Pour le Québec, que j'ai inscrit à la place de Canada dans les 6 colonnes cofabricants, pas de changement (mais en réfléchissant un instant, c'est normal puisque les ventes du Québec sont déjà décomptées, pcq territoire francophone ... tu me diras si le raisonnement est correct?)

Quand tu en auras eu le temps, tu nous diras si ça te semble correct ... et, si oui, on pourra s'attaquer à la question suivante ;) ... sinon, c'est que quelque chose m'aura échappé (ne restera plus qu'à mettre le doigt sur le quelque chose en question!)

Bonne nuit,
 

Pièces jointes

  • Ventes (agnesd) 2.xlsx
    23.2 KB · Affichages: 41

agnesd

XLDnaute Occasionnel
Re : Calcul nombre de territoires vendus / nombre de ventes - comment automatiser ?

Bonjour Modeste,

cela me semble tout à fait correct, très peu de différences avec mon calcul manuel (c'est à dire ligne par ligne).
Je vais l'intégrer dans mon tableau, merci, l'expert !

Pour le reste, c'est comme tu veux, sinon je reste avec mon autre mode de calcul plus... artisanal...

Bonne journée,

Agnès
 

Modeste

XLDnaute Barbatruc
Re : Calcul nombre de territoires vendus / nombre de ventes - comment automatiser ?

Bonjour Agnès, le forum,

très peu de différences avec mon calcul manuel
Je présume que l'idée serait de réduire au maximum le risque d'erreurs? S'il en reste, il faudrait déterminer où elles se situent, pour pouvoir les corriger! ... Sinon, à la prochaine mise à jour, tu es repartie avec tes calculs manuels!?


Pour le reste, c'est comme tu veux, sinon je reste avec mon autre mode de calcul plus... artisanal...
Ben ... c'est surtout à toi de voir!? Soit tu cherches un système pour te faciliter les calculs (et diminuer le risque d'erreurs), soit tu y es finalement attachée, à tes calculs d'apothicaire ;)

La balle est dans ton camp!
 

agnesd

XLDnaute Occasionnel
Re : Calcul nombre de territoires vendus / nombre de ventes - comment automatiser ?

Oui, c'est vrai, si tu n'es pas encore lassé, cherchons encore ! Pour les calculs manuels, je vais tout vérifier ligne par ligne, car il n'est pas exclu non plus que j'ai de temps à autre cliqué sur la mauvaise cellule...

Concernant la Suisse, je précise que romande, italienne et allemande comptent bien X3 lorsqu'il s'agit de ventes de territoires.

Sinon, j'ai rectifié l'intitulé de la colonne de calcul, car francophonie = belgique + quebec + suisse romande (my bad!).

Est-ce que tous les paramètre te semblent maintenant à peu près clairs ?

A quoi ressemble donc ta macro ?

Agnès
 

Modeste

XLDnaute Barbatruc
Re : Calcul nombre de territoires vendus / nombre de ventes - comment automatiser ?

Re-bonjour,

J'avais déjà "exclu" les chiffres du Québec (même si le titre de la colonne ne le mentionnait pas), puisque tu avais complété une de mes formules, dans ce sens.
Pour les "3 Suisses", les derniers chiffres devraient être corrects (j'insiste sur le conditionnel! :eek:)

Il reste 3 "discordances" entre les pays de la ligne 1 et ceux renseignés dans les colonnes DF à DK:
  • PAYS-BAS en ligne 1 PAYS BAS en colonnes cofabricants
  • COREE DU SUD en ligne 1 COREE en colonnes cofabricants
  • BOSNIE-HERZEGOVINE en ligne 1 BOSNIE HERZEGOVINE en colonnes cofabricants
Je ne sais pas si tu trouves préférable de modifier en ligne 1 ou en colonnes cofabricants

Il y a aussi (je m'en suis aperçu quand j'ai vérifié que ma macro, adaptée aux 3 Suisses ne posait pas de problème dans d'autres cas) ... il y a aussi, disais-je une dizaine de pays, renseignés comme cofabricants, mais qui ne figurent pas en ligne 1 (Luxembourg, pour ne citer que le plus courant) ... on ne s'inquiète pas?

Le code de la macro figure ci-dessous: (j'ai commenté autant que possible)
VB:
Sub ventesHorsFrancoEtCofabr()
Application.ScreenUpdating = False
derligne = Feuil1.Cells(5000, 2).End(xlUp).Row
Dim tablo() As Long
ReDim tablo(derligne - 1)
For lig = 2 To derligne 'on passe en revue les lignes de 2 jusqu'à celle où figure le dernier visa (col B)
    If Application.Sum(Feuil1.Cells(lig, 14).Resize(1, 92)) > 0 Then 'si toute la ligne est vide, on "zappe"
        For Each c In Feuil1.Cells(lig, 14).Resize(1, 92).SpecialCells(xlCellTypeConstants, xlNumbers) 'pour chaque cellule non-vide de la ligne
            ' on exclut les territoires francophones
            If c > 0 And Feuil1.Cells(1, c.Column) <> "BELGIQUE" And Feuil1.Cells(1, c.Column) <> "SUISSE ROMANDE" And Feuil1.Cells(1, c.Column) <> "QUEBEC" Then
                cofab = False
                'on vérifie, en DF:DK qu'il ne s'agit pas d'un "co-fabricant"
                For col = 110 To 115
                    ' on vérifie la correspondance entre les 7 premiers caractères (sans espaces) pour que les chiffres de vente de
                    ' chaque région linguistique de suisse soit décomptée, si SUISSE est co-fabricant (c'est le seul pays/territoire pour lequel il y a correspondance multiple)
                    If Trim(Left(Feuil1.Cells(1, c.Column), 7)) = Trim(Left(Feuil1.Cells(lig, col), 7)) Then cofab = True: Exit For
                Next col
                'puisque ce n'est pas un territoire francophone et si ce n'est pas un co-fabricant, on additionne le montant des ventes
                If Not cofab Then tablo(lig - 2) = tablo(lig - 2) + c
            End If
        Next c
    End If
Next lig
Feuil1.Cells(2, "DM").Resize(UBound(tablo), 1) = Application.Transpose(tablo) 'on colle en colonne DM, le contenu du tableau contenant les ventes
Application.ScreenUpdating = True
End Sub
 

agnesd

XLDnaute Occasionnel
Re : Calcul nombre de territoires vendus / nombre de ventes - comment automatiser ?

Bonjour,

Tu as une très bonne capacité d'analyse. Il y a beaucoup d'exceptions, et le Luxembourg en fait partie... On ne s'inquiète pas, c'est quelque chose que je précise bien avec les chiffres, de même que d'autres faiblesses initiales sur les données ventes.

Je rectifie les noms de pays en fonction de ce que tu as indiqué, merci !

Je dois mettre ce tableau de côté pour d'autres tâches, mais je te ferai signe si j'y reviens, au moins pour te tenir informé, pas forcément pour te solliciter !

Très bonne après-midi et un immense merci.

Agnès
 

Discussions similaires

Statistiques des forums

Discussions
312 370
Messages
2 087 688
Membres
103 639
dernier inscrit
NIEMASAFI