Somme.si avec plage variable d’une autre feuille

Résolu
Akatsucki Messages postés 94 Statut Membre -  
Akatsucki Messages postés 94 Statut Membre -
Bonjour,
Cela fait plusieurs jours que je cherche la solution à ma formule mais en vain...
J’ai une feuille ou je souhaiterais faire la somme de la quantité qu’il me reste à produire si le code sors de production, seulement ça me renvoie #valeur!

Donc feuille 1 j’ai les codes en questions dans un tableau
Feuille 2 j’ai tous les codes (plusieurs fois les mêmes desfois) et la valeurs si ils sortent de production

Je désire choisir une plage spécifique qui varie selon le type de contenant du code
BW6 point de référence

En cellule CP3 : formule qui calcule la dernière ligne de la plage des codes (exemple BW145)

En cellule CP4 : formule qui calcule la dernière ligne de la plage de la quantité à produire(exemple CL145)

Ma formule : somme.si(feuille2!$BW$6:indirect($CP$3;1);A1;feuille2!$CL$6:indirect($CP$4;1))

Je sais pas si il y a des erreurs d’où ma demande.. à vous de m’éclairer merci

4 réponses

  1. Vaucluse Messages postés 27336 Date d'inscription   Statut Contributeur Dernière intervention   6 453
     
    Bonjour
    vos codes INDIRECT donnent un numéro de ligne alors que la formule avec ce code attend:
    l'encadrement d'un nom de feuille, le nom de feuille, l'adresse complète du champ à analyser
    donc écrivez(si vos noms de feuille ne comportent ni blanc, ni opérateur du type -
    =SOMME.SI(INDIRECT("feuille2!$BW$6:"&$CP$3);A1;INDIRECT("feuille2!$CL$6:"&CP$4))
    et si vos noms comportent un des signes, il faut rajouter les apostrophes pour encadrer le nom de feuille
    en fait vous pouvez vérifier en écrivant les adresses seules dans une cellule, vous devez retrouver l'adresse exacte, en écrivant par exemple:
    ="feuill2!BW6:"$CP$3 vous devez lire: feuil2!BW6:BW145
    ... mais il serait peut être plus simple de nommer les champs BW et CL en utilisant le code DECALER et d'utiliser les noms dans votre formule
    si ça ne convient pas, revenez en déposant votre modèle si possible, par exemple ici:
    httyps://mon-partage.fr
    et revenez coller le lien créé sur le site
    crdlmnt
    0
    1. Yoyo01000 Messages postés 1720 Date d'inscription   Statut Membre Dernière intervention   168
       
      Salutations Vaucluse

      Je me permets de reprendre ton lien de partage : https://mon-partage.fr/
      0
      1. Vaucluse Messages postés 27336 Date d'inscription   Statut Contributeur Dernière intervention   6 453 > Yoyo01000 Messages postés 1720 Date d'inscription   Statut Membre Dernière intervention  
         
        Merci, effectivement, je n'ai pourtant bien que 5 doigts à chaque main, mais il y en a toujours un non-identifié qui traîne! :-))
        bonne soirée
        0
    2. Akatsucki Messages postés 94 Statut Membre
       
      D’abord merci de votre réponse rapide, effectivement les feuilles ce nomme "PG CHAPE" et "PG CONF" avec un espace entre ...

      du coup ma formule donnerai ceci ??

      =SOMME.SI(INDIRECT("PG CONF!$BW$6:"&$CP$3);A1;INDIRECT("PG CONF!$CL$6:"&CP$4))

      "PG CONF!$BW6:"
      J’ai pas compris si je devais rajouter d’autre apostrophe a cause de l’espace qui ce trouve dans le nom de la feuille
      0
      1. Vaucluse Messages postés 27336 Date d'inscription   Statut Contributeur Dernière intervention   6 453 > Akatsucki Messages postés 94 Statut Membre
         
        encadrez PG CONFIG avec (dans tous les cas avec les apostrophes fonctionnent avec ou sans blanc, vous pouvez les placer "tous types")
        =SOMME.SI(INDIRECT("'PG CONF'!$BW$6:"&$CP$3);A1;INDIRECT("'PG CONF'!$CL$6:"&$CP$4))
        en aparté les $ ne sont pas utiles sur BW6 et CL6 qui sont des textes dans le code INDIRECT
        crdlmnt
        0
      2. Akatsucki Messages postés 94 Statut Membre > Vaucluse Messages postés 27336 Date d'inscription   Statut Contributeur Dernière intervention  
         
        Merci de l’info je testerai demain et je vous tiendrais informé

        Bonne soirée
        0
  2. Akatsucki Messages postés 94 Statut Membre
     
    Ça a fonctionné niquel j’ai juste dû rajouter le nom de la feuille avant $CP$3 et 4 puisque ma cellule ce trouver sur cet feuille

    Merci encore !!
    0
  3. Akatsucki Messages postés 94 Statut Membre
     
    Oups j’ai répondu trop vite ...
    La formule marche sur la plage BW6:BW140 mais quand je veux sélectionner l’autre plage BW140:BW220 j’ai erreur avec #REF

    =Si(R4="est"SOMME.SI(INDIRECT("'PG CONF'!$BW$6:"&'PG CONF'!$CP$3);A1;INDIRECT("'PG CONF'!$CL$6:"&'PG CONF'!$CP$4));somme.si(indirect('PG CONF'!$CP3&":'PG CONF'!BW220");A4; indirect('PG CONF'!$CP4&":'PG CONF'!CL220"))
    0
  4. Vaucluse Messages postés 27336 Date d'inscription   Statut Contributeur Dernière intervention   6 453
     
    Si c 'est réellement l'écriture de la formule il y a quelques soucis, mais ça dépend de ce que contiennent CP3 et CP4.
    • il faut un point.virgule derrière le "est"au début
    • Si c'est uniquement la ref colonne suivie du N° de ligne, (par exemple BW140) il ne faut pas répéter le nom de feuille, mais placer les guillemets et les apostrophes aux bons endroits
    • ce qui impose que CP3 et CP4 contiennent des formules du genre:

    ="BW"&formule n° de ligne
    INDIRECT("'PG CONFIG'!BW6:"&$CP$3) par exemple
    • ou alors vous ne renvoyez que le N° ligne en CP3 et le code INDIRECT s'écrit

    =INDIRECT("'PG CONFIG'!BW6:BW"&$CP$3. Dans ce cas CP3 suffira pour les deux INDIRECT CP4 sera inutile
    • et enfin, SOMME.SI ne peut fonctionner que si les champs sont identiques, à savoir donc que n° de ligne CP3 doit être égal à n° de ligne CP4

    donc il y a pas mal de corrections à faire, mais je ne peux pas préciser sans le modèle. Pouvez vous le déposer par exemple ici avec quelques explications sur les attendus
    https://mon-partage.fr
    et revenir coller le lien créé sur le site
    ..ou si vous préférez, en message privé en cliquan sur mon pseudo puisque vous êtes inscrits
    Je pourrais alors vous proposer l'utilisation de DECALER qui sera quand même plus simple
    à vus lire
    crdlmnt
    0
    1. Akatsucki Messages postés 94 Statut Membre
       
      Merci ????
      J’ai résolu tous mes soucis de formulation
      Effectivement il devait y avoir une erreur d’apostrophe quelque part mais quand la formule commence à devenir importante c’est dure de ce repérer

      Encore merci
      Crdlmt
      0