Formule pour base de données sur excel

Bonjour,

Je recherche une formule me permettant de trouver un nombre de livraison.

Ex : N°Cde Date de livraison Nombre de livraison
54 06/08/09 =nb.si(.....)
54 07/08/09

P.S : Ce n'est pâs aussi simlpe que sur l'exemple, j'ai 50000 lignes a traiter , si je n'ai pas de formules, j'y suis enccore l'année prochaine ...

Merci d'avance,
Configuration: Windows XP Internet Explorer 7.0

10 réponses

  1. Contributeur
    Salut,

    pas très clair.

    Juste pour comprendre

    A______________B
    Nombre livraison______Date livraison
    54 ___________ 06/08/09
    54 ___________ 07/08/09

    54 représente bien le nombre de livraison?
    0
    1. Contributeur
      54 est le N° du bon de commande (si j'ai bien compris).
      0
    2. Contributeur
      @Raymond PENTIERSalut Raymond,

      dans ce cas si le tableau s'étend de A1 à A50000 il pourrait, dans la cellule G1 par exemple, se servir de la formule:
      =NBVAL(A1:A50000)
      0
    3. Contributeur
      @Ricky38En fait, on ne sait pas s'il veut faire des totaux par date, ou par commande, ou par client ...
      Alors attendons ses explications, et son extrait de fichier ...
      0
    4. Contributeur
      @Raymond PENTIERen effet Raymond il y a plusieurs possibilités
      0
  2. Contributeur
    Bonjour théo.

    Si on t'envoie une formule aussi vague que ton explication, tu vas nous insulter !
    L'exemple n'est pas "simple", il est simpliste et très incomplet.
    Fais un extrait de 50 lignes et envoie-le nous, en précisant ce qu'il faut additionner.
    0
    1. Bonjour,

      Désolé pour cet extrait incomplet qui me paraissait clair,

      ci-joint un extrait de 50 lignes comme demandé :
      N°Cde Date livraison
      3011136617 28/08/2009
      3011134466 15/07/2009
      3011134466 15/07/2009
      3011134466 15/07/2009
      3011134466 15/07/2009
      3011134466 15/07/2009
      3011134466 15/07/2009
      3011134466 15/07/2009
      3011136617 28/08/2009
      3011136617 28/08/2009
      3011136617 28/08/2009
      3011136617 28/08/2009
      3011136617 28/08/2009
      3011136617 28/08/2009
      3011136617 28/08/2009
      3011136617 28/08/2009
      3011136617 28/08/2009
      3011134443 13/07/2009
      3011134443 13/07/2009
      3011134443 13/07/2009
      3011134443 13/07/2009
      3011134443 13/07/2009
      3011134443 13/07/2009
      3011134443 13/07/2009
      3011134443 13/07/2009
      3011134443 13/07/2009
      3011134443 13/07/2009
      3011134443 13/07/2009
      3011134443 13/07/2009
      3011134443 13/07/2009
      3011135712 07/08/2009
      3011135712 07/08/2009
      3011135712 07/08/2009
      3011135712 07/08/2009
      3011134466 07/08/2009
      0
      1. Je précise que plusieurs N°cde pour une même date signifie une seule livraison
        Un même n°de commande pour deux dates différentes représente deux livraisons et ainsi de suite.
        Merci d'avance,
        0
        1. Contributeur
          Bonjour théo.

          Tu constates donc par toi-même que ton exemple de départ, avec seulement 2 lignes d'enregistrements, ne permettait pas de tirer ces conclusions !
          Et comme il ne s'agissait que d'un exemple, j'étais en droit de penser que ton fichier réel comportait d'autres colonnes (client, horaire, montant ...).

          Il y a moyen d'écrire une belle formule avec les fonctions INDEX, DECALER, EQUIV ...

          Moi, je te propose quelque chose de plus simple, mais en 2 étapes :
          1) En C2, formule à recopier vers le bas ► =SI(ET(A2=A1;B2=B1);C1+1;1)
          2) Mise en forme conditionnelle pour la ligne 2, avec une seule règle contenant la formule =$C1>=$C2, règle à reproduire sur toutes les lignes (je propose une couleur de remplissage et la bordure inférieure).
          Bien entendu cela ne fonctionne que si, comme dans ton exemple, la base est triée sur les 2 colonnes ...
          https://www.cjoint.com/?bvnBUGv5jg
          0
          1. Mon fichier à plusieurs colonnes (une bonne dizaine)
            ----Z-------------------------AA------------------AB
            N° BL----------------------Date BL---------------Nombre de livraison-----------Formule
            3012394096------------01/07/2009------------1-------------------------=SI(ET(Z3=Z2;AA3=AA2);AB1+1;1)
            3012394102------------01/07/2009------------FAUX--------------------=$AB2>=$C2
            3012394102------------01/07/2009------------VRAI--------------------=$AB3>=$C3
            3012394108------------01/07/2009------------VRAI------------------etc....
            3012394108------------01/07/2009------------VRAI-----------------
            3012394108------------01/07/2009------------VRAI
            3012394108------------01/07/2009------------VRAI
            3011134267------------08/07/2009------------VRAI
            3011134267------------08/07/2009------------VRAI

            Je pense en pas avoir compris ta formule , le cas échéant , je ne sais pas comment faire ...

            Aurais tu par miracle une solution?
            0
            1. Contributeur
              Non, je ne fais pas (encore) de miracles !

              Envoie ton fichier, et on verra. Ton post 10 est absolument inexploitable ...
              0
              1. Je suis désolé, la base sur laquelle je travail est confidentielle...
                0
            2. bonjour
              face a non modele je te propse de proceder ainsi
              1) trier la colonne A sans doublons afficher le resultat dans colonne adjacente =critetres 1
              2) memechose pour B = criteres 2
              3) utiliser la f onction SOMMEPROD comme suit
              =SI(SOMMEPROD(($a$1:$b$5000)= cel du1er critere aprés tri )*(a1;b5000)=cel du 2eme crtere aprés tri)<>0;1;0))
              tu mets les differents resultat (de sommeprod) sur la meme colonne ensuite enbas de cette colonne au lieu de faire une addition tu fais =NB.SI( la plage de resultats ; >0)
              tu obtiendras le nb de tranports effectues selon les criteres (n° de bon ou dates) que tu auras indiqué dans sommeprod
              j'espere avoir fait avancé le shmilblick
              0
              1. Bonjour,

                Comment fais tu pour avoir une colonne sans doublon ?

                Merci d'avance,

                Théo
                0
                1. re
                  voir : données >filtre >filtre elaboré >copier vers un autre emplacement > cocher "sans doublons" dire ou tu veux cette nouvelle liste
                  normalement ça gaze
                  0