Fonction "UNIQUE" + conditions de somme supérieurs à 0

Bonjour,

Je viens solliciter votre aide et vos connaissance.

J’ai un fichier Google Sheet qui contient un onglet "Achat / Vente" qui me permet de renseigner mes achats et ventes de divers produits, j’arrive à récupérer et afficher dans mon onglet "Stock" les articles et les quantités achetées au fur et a mesure de mes transactions.

Mais, j’ai besoin de vos connaissances car je n’arrive pas à faire supprimer la ligne d'un produit lorsque sa quantité est à "0" suite à la vente de toute la quantité d'un article.
La ligne du produit reste dans l'onglet stock en affichant "0" en quantité

Par avance je vous remercie pour votre aide,

David

Le fichier en question : https://docs.google.com/spreadsheets/d/180-0UUL8yKzVxWOg_wr--Ze_7fotgCG7vhwmnKlee80/edit?usp=sharing

Bonjour David,

Tu peux utiliser ça en masquant les colonnes A et B :

=query(A4:B;"select * where B <>0";0)

https://docs.google.com/spreadsheets/d/1c5a6HD3L5tbhIQEqURkbmpRE7IyawE6-BNYR2jAWtpg/edit?usp=sharing

Cordialement,

Fil.

Bonjour Fil,

Merci beaucoup, pour cette proposition très intéressante que je met de côté.

L'idéal serait toutefois une formule via laquelle je n'aurais pas de cellules à masquer.

Merci encore et bonne journée,
Cordialement,
David

Alors, tu peux utiliser ça :

=query(query({query('Achats Ventes'!B6:D12;"select B, sum(D) where C = 'Achat' group by B label sum(D)''");query('Achats Ventes'!B6:D12;"select B, (0-sum(D)) where C = 'Vente' group by B label  (0-sum(D))'' ";0)};"select Col1, sum(Col2) where Col2 <> 0 group by Col1 order by Col1 label sum(Col2)'' ");"select * where Col2 <> 0")

https://docs.google.com/spreadsheets/d/1pLcdWx-d_tkTlmc3uuXoKcDshqVrx473I_J7GOFqj8s/edit?usp=sharing

Merci beaucoup Fil,

Je viens de tester et ça soulève un autre problème, si je n'ai pas de "Vente" dans l'onglet "Achats Ventes", aucune valeur ne s'affiche dans l'onglet "Stock" et une erreur ARRAY_LITERAL apparait.

Rectificatif :

=QUERY(query({iferror(query('Achats Ventes'!B6:D12;"select B, sum(D) where C = 'Achat' group by B label  sum(D)'' ";0);TRANSPOSE({"";0}));iferror(query('Achats Ventes'!B6:D12;"select B, (0-sum(D)) where C = 'Vente' group by B label  (0-sum(D))'' ";0);TRANSPOSE({"";0}))};"select Col1, sum(Col2) where Col2 <> 0 group by Col1 order by Col1 label sum(Col2)'' ");"select * where Col2 <> 0")

Un énorme merci pour ton aide Fil.

Tu as été au top et m'enlève une grosse épine du pied

Rechercher des sujets similaires à "fonction unique conditions somme superieurs"