Formule dans un tableau non structuré

Bonjour à tous,

J'aimerais vous soumettre quelques formules à écrire que je trouve un peu cocasse, j'ai tenté de trouver sur le net mais je n'ai pas trouvé réponse à mes questions,

Enfaite je souhaite faire quelques calculs dans un tableau (tableau2) basé sur un autre tableau (tableau1) qui es non structuré et qui peux évoluer (Ajout de ligne)

J'aimerais donc trouver tout d'abord mes formules et ensuite comment faire si le tableau1 à évolué en nombre de lignes ?

Voici mes formules, j'ai pensé que ce serai plus interactif et clair dans une feuille Excel

Cdt

Bonjour,

Voir ceci:

Cdlt

Bonjour,

Merci pour votre retour,

Pour la première formule je suis Ok,
La deuxiemme j'ai réussi à la déduire, par contre la 3 eme je ne suis pas d'accord, tu as mal lu l’énoncé, pas d’Espagne cette fois-ci

Mais l'erreur viens surement de moi car je demande comment faire suivre une formule dans un tableau non structuré et j'utilise toute les colonne pour mes formules

Supposons que le tableau commence sur la ligne 5 et ne se termine pas vraiment, comment faire évoluer la formule dans mes case à réponse

pour les deux dernière tu n'a pas réussi à les faire, trop compliqué ?

Cdt

Bonjour à tous,

Le bon vieux SOMMEPROD est aussi utilisable. Je l'ai fait sur une partie des lignes ou colonnes. On aurait pu choisir les colonnes entières.

Bonjour ma fraise,

Pourquoi tu trouve 6 sur la 3 eme formule ?

Ma plus grosse inquiétude c'est que je ne peux pas descendre aussi loin dans le choix des plages,

Supposons que j'ai un autre tableau indépendant en dessous de mon tableau des ventes ? je ne peux pas indiquer D999 comme plage

il serait pas possible d'indiquer à une formule de compter jusqu’à la frontière du prochain tableau ? du genre avec un repère, un mot, ect ?

Enfaite je remarque que si on ajoute une ligne avant la fin du tableau les formules se mettent à jour, par contre une insertion en fin de tableau pas de mise à jour

Et comme les insertions se font pas VBA en fin de tableau je ne veux pas modifier cela

Pour la première formule je suis Ok, La deuxieme j'ai réussi à la déduire, par contre la 3 eme je ne suis pas d'accord, tu as mal lu l’énoncé, pas d’Espagne cette fois-ci

la formule en 3ème position: =NB.SI.ENS(D:D;"<>Orange";D:D;"<>Cesire";D:D;"<>Banane";D:D;"<>";B:B;"
<>Espagne")-2 "L"Espagne est bien déduite dans la formule, par contraire l'énoncé n'est pas clair du tout.

Re,

Cet énoncé ?

Le nombre de cellule en D ne contenant pas le mot "Orange" ou "cesire" ou "Banane

Hummm..

Alors j'ai mal interprété.

Dans ce cas la formule devient:

=NB.SI.ENS(D:D;"<>Orange";D:D;"<>Cesire";D:D;"<>Banane";B:B;"<>")

Ok merci,

Une idée pour mon souci ? Si parle exemple j'ajoute une ligne à la fin d'un tableau non structuré ? Une méthode pour mettre à jour la formule ?

Bonjour à tous

Les tableaux structurés existent depuis 20 ans pour optimiser Excel et s'entêter à ne pas les utiliser est curieux

Par ailleurs jusqu'à 2010 inclus SOMMEPROD ne pouvait être utilisé sur des colonnes entières. Même si c'est possible aujourd'hui, cela reste déconseillé...

Si un repère existe on peut utiliser DECALER pour une plage élastique ou glissante

Ok merci,

Une idée pour mon souci ? Si parle exemple j'ajoute une ligne à la fin d'un tableau non structuré ? Une méthode pour mettre à jour la formule ?

Avez-vous au moins essayer d'ajouter des lignes? la formule s'adaptera puisqu'elle couvre les colonnes entières.

Décidément tu manque de concentration

Je ne peux pas faire de calcul sur toutes la colonne

Pour la formule elle fonctionne pas mais j'ai réussi à déduire le souci et c'est plutôt ça

=NB.SI.ENS(D5:D17;"<>Orange";D5:D17;"<>Cesire";D5:D17;"<>Banane";D5:D17;"<>")

Re,

Parigoo à écrit :

Pourquoi tu trouves 6 sur la 3ème formule ?

Parce que j'ai écrit :

=SOMMEPROD((D5:D989<>"Orange")*(D5:D989<>"cerise")*(D5:D989<>"Banane")* (D5:D989<>""))

au lieu de

=SOMMEPROD((D5:D989<>"Orange")*(D5:D989<>"cesire")*(D5:D989<>"Banane")* (D5:D989<>""))

Pour ne pas rester dans une ignorance crasse, qu'est ce que c'est comme fruit le (ou la) "cesire" ?

C'est une sorte de fruit rouge qui pousse un peu partout sur des terrains vague

Quelqu’un peut m'expliquer cette formule ?

=SOMMEPROD((N5:ZZ5<>"")*(N5:ZZ5<=AUJOURDHUI())*(N6:ZZ6="Périmé"))

Tu as une version en NB.SI.ENS qui est déja plus compréhensible pour moi

Re,

Un classeur qui utilise des noms définis pour déterminer la zone à examiner. On utilise ces noms dans les formules.

Il y a deux systèmes de noms:

  1. Le premier (Feuille "Feuil1") s'appuie sur le fait que le tableau des ventes ne comporte aucune cellule vide dans sa colonne "Pays".
  2. Le deuxième (Feuille "Feuil2") s'appuie sur le fait qu'on connait l'en-tête du tableau situé sous le tableau des ventes.

nota : ces noms sont normalement aussi utilisables dans les formules avec NB.SI.ENS().

Re,

Quelqu’un peut m'expliquer cette formule ?

=SOMMEPROD((N5:ZZ5<>"")*(N5:ZZ5<AUJOURDHUI())*(N6:ZZ6="Périmé"))

SOMMEPROD va agir sur des matrices ayant chacune les mêmes dimensions.

Ici nous avons deux matrices : la matrice des dates (de N5 à ZZ5) et la matrice des états (de N6 à ZZ6). Ces deux matrices ont bien le même nombre d'éléments

SOMMEPROD va :

a) examiner si N5 est vide ou non (N5<>"") : réponse VRAI ou FAUX

b) examiner si N5 est strictement antérieure à la date d'aujourd'hui ou non (N5<AUJOURDHUI()) : réponse VRAI ou FAUX

c) examiner si N6 est égale à "Périmé" ou non (N6:="Périmé")) : réponse VRAI ou FAUX

Ensuite SOMMEPROD fait le produit des ces trois valeurs Vrai ou faux. Quand on multiplie des valeurs vrai ou faux, ces valeur sont transformées en 1 ou 0.

Le produit n'est égal à 1 que si chacun des trois termes est égale à 1 (donc étaient égaux à Vrai - les trois conditions sont vérifiées).

SOMMEPROD garde en mémoire cette valeur intermédiaire (1 ou 0)

Puis SOMMEPROD fait la même chose avec O5 et O6 puis avec P5 et P3, ..., et ainsi jusqu'à ZZ5 et ZZ6.

A la fin SOMMEPROD va faire la somme des valeurs intermédiaires (qui sont 1 ou 0). La somme des "1" est le résultat souhaité.

Bonjour Mafraise

Super intéressant je vais me pencher dessus et essayer de suivre la logique..

Par exemple pour

=SOMMEPROD((N5:ZZ5<>"")*(N5:ZZ5<AUJOURDHUI())*(N6:ZZ6="Périmé"))

Ce que j'aurais du demander c'est plutôt cela : (Je le fait avec mes mots)

Chercher le mot "périmé" dans la plage N:6 S:6 pour qui la date = ou inférieur à aujourd'hui en N:5 S:5 et renvoyer VRAI/Faux donc résultat attendu dans la cellule "1" car vrai, si faux alors résultat = "0"

Du coup on ne compte plus le nombre de correspondance mais on vérifie si le mot est trouvé dans les plages indiqué si oui renvoyer "1" peu importe le nombre de mot trouvé

Re,

Parigoo a écrit :

Ce que j'aurais du demander c'est plutôt cela : (Je le fait avec mes mots)

Chercher le mot "périmé" dans la plage N:6 S:6 pour qui la date = ou inférieur à aujourd'hui en N:5 S:5 et renvoyer VRAI/Faux donc résultat attendu dans la cellule "1" car vrai, si faux alors résultat = "0"

Du coup on ne compte plus le nombre de correspondance mais on vérifie si le mot est trouvé dans les plages indiqué si oui renvoyer "1" peu importe le nombre de mot trouvé

Si j'ai bien saisi (pas testé la formule mais ça devrait fonctionner):

On compare la formule existante à 0 :

=SOMMEPROD((N5:ZZ5<>"")*(N5:ZZ5<AUJOURDHUI())*(N6:ZZ6="Périmé"))>0

On utilise la fonction N() qui convertit VRAI en 1 et FAUX en 0 :

=N(SOMMEPROD((N5:ZZ5<>"")*(N5:ZZ5<AUJOURDHUI())*(N6:ZZ6="Périmé"))>0)

Re,

Ca à bien fonctionné avec

=N(SOMMEPROD((N5:ZZ5<>"")*(N5:ZZ5<AUJOURDHUI())*(N6:ZZ6="Périmé"))>0)

Par contre ca prend uniquement les dates inférieur à aujourd'hui,

Il faut inférieur ou égal à aujourd'hui, j'ai essayé d'ajouter le signe "=" mais ca n'a pas pris en compte.

Cdt

Re,

Essayez :

=N(SOMMEPROD((N5:ZZ5<>"")*(N5:ZZ5<=AUJOURDHUI())*(N6:ZZ6="Périmé"))>0)
Rechercher des sujets similaires à "formule tableau structure"