Calcul mathématique... Rapport Carbone/Azote

Bonjour à toutes et à tous,

Je viens de créer un fichier GS pour calculer (enfin j'aimerais qu'il calcule) le rapport Carbone Azote d'un mélange de matière organique.

https://docs.google.com/spreadsheets/d/1DiDTRMkHnDJpCtok3h3_epfcmowMmEsjjSkwODnb1gU/edit?usp=drive_l...

Il y a 2 tableaux :

  • A : permet de calculer la masse de chaque élément à mélanger selon son C/N et selon le C/N total désiré. C/N est un chiffre simple, comme 24 par exemple.
  • B : permet de calculer le C/N du mélange selon le C/N de chaque élément et de la masse engagée.

Actuellement je me casse les dents sur les formules à créer, mathématiquement je sèche. Pour le tableau A, par exemple si je veux un C/N total de 25 et que je mélange 2 éléments dont l'un à un C/N de 55 (élément X) et l'autre de 20 (élément Y) alors de combien devrait être le rapport de mélange X et Y ? Et il faudrait un message d'erreur si les éléments que l'on veut mélanger ne permettent pas d'obtenir le C/N désiré.

Pour le tableau B je pense que c'est plus simple, on rentre le C/N de chaque élément (jusqu'à 10) puis la masse dont on dispose et cela nous donne le C/N total.

Quelqu'un saurait-il m'aider à ce sujet ?

Merci beaucoup.

Bonjour,

Tu peux utiliser ça pour le tableau B :

=SUMPRODUCT(C26:C35;D26:D35)/SUM(D26:D35)

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

Pour le tableau A, je ne vois pas comment créer une formule; il y a une infinité de solutions si tu n'as pas un minimum de données de quantité...

Cordialement,

Fil.

Bonjour et merci pour votre aide précieuse.

Pour le tableau B comment éviter ceci quand le tableau est vide ?

capture d ecran 2024 07 07 075122

Pour le tableau A effectivement cela semble compliqué sans quelques données de masse, je vais réfléchir à ça.

Pour le tableau A, je ne vois pas comment créer une formule; il y a une infinité de solutions si tu n'as pas un minimum de données de quantité...

Et même si on définissait une masse disponible pour chaque élément il y aurait plusieurs possibilités de mélange, il faudrait alors pondérer chaque élément selon son importance peut-être mais cela complique la chose et le but de ce fichier est une aide rapide et simple. Donc je vais abandonner le tableau A.

Merci encore pour votre aide.

Je vais maintenant ajouter un tableau dans une feuille séparée (onglet chez Excel c'est ça ?) pour lister les matières organiques avec leur C/N. pensez vous qu'il sera possible dans la colonne Matière d'avoir pour chaque cellule un menu déroulant dans lequel on puisse choisir la matière du futur mélange et ainsi que ça affiche le C/N correspondant ?

Merci

Ok j'ai pu créer des listes déroulantes pour la colonne Matière organique (données dans la feuille DATAS), et des listes déroulantes pour la colonne Masse.

Ce que je ne parviens pas à faire maintenant c'est, selon la matière organique sélectionnée dans la colonne Matière organique, afficher son rapport C/N dans la colonne Rapport C/N (données issues de la feuille DATAS) et le cas échéant proposer une liste déroulante s'il y en a plusieurs.

https://docs.google.com/spreadsheets/d/1DiDTRMkHnDJpCtok3h3_epfcmowMmEsjjSkwODnb1gU/edit?usp=sharing

Merci pour votre aide à ce sujet.

Oups ! Et dernière chose, si le résultat pouvait être arrondi plutôt qu'avec des décimales, apparemment c'est ROUND qu'il faut ajouter mais je n'ai pas su l'appliquer à un résultat de formule...

Nicolas.

Pour ne pas avoir le message d'erreur :

=iferror(SUMPRODUCT(C26:C35;D26:D35)/SUM(D26:D35))

Pour voir un nombre entier, sélectionner en Format/Nombre/#,##0

Yep ! ça fonctionne, c'est si simple quand on sait.

Merci.

Tu peux utiliser ça pour ton rapport C/N en C11 et à copier vers le bas :

=iferror(query(DATAS!$A$2:$C;"select B where A = '"&A11&"'"))

Là, j'ai choisi la colonne B pour importer les résultats et attention la formule ne fonctionne pas avec le texte contenant une apostrophe ( ' ) :

Là, j'ai choisi la colonne B pour importer les résultats

avec Select B ?

Mais si je veux que la sélection se fasse parmi B, C ou D comment faire ? J'ai testé Select B, C, D ou d'autres formulation mais ça ne fonctionne pas. Quelle est la bonne syntaxe ici ? Et comment cela va s'afficher dans le tableau, automatiquement avec un menu déroulant ?

attention la formule ne fonctionne pas avec le texte contenant une apostrophe ( ' )

Merci j'ai rectifié et tous les choix fonctionnent maintenant.

Tu peux utiliser ça pour afficher les 3 colonnes (à copier vers le bas) :

=IFERROR(query(DATAS!$A$2:$D;"select B, C, D where A = '"&A11&"'"))

Et ça pour les listes déroulantes (à copier vers le bas) :

=CALCUL!$C11:$E11

https://docs.google.com/spreadsheets/d/1KYIvIuqmJ9YtCaiv_cfi0aTgJQfULaYVGIwpmH8Tr4Y/edit?usp=sharing

Tu peux masquer si besoin les colonnes C, D, E !

Merci beaucoup, j'ai décalé les colonnes hors du tableau pour pouvoir les masquer sans casser le reste de la feuille. J'ai répété à l'identique, il me semble, les formules et tout fonctionne correctement sauf que dans les menus déroulants du rapport C/N il y a la formule qui apparait, je ne sais pas comment ne pas la faire apparaitre ici.

https://docs.google.com/spreadsheets/d/1DiDTRMkHnDJpCtok3h3_epfcmowMmEsjjSkwODnb1gU/edit?usp=sharing

C'est rectifié !

Merci Monsieur Filoche.

C'est parfait ! Vous m'avez bien aidé tout fait

J'ai créé un bouton de remise à zéro du tableau mais je n'ai pas bien saisi les autorisations de la macro, est-ce que tu peux vérifier qu'il fonctionne pour toi aussi ?

Et je l'ai également téléchargé en fichier .xlsx mais malheureusement je n'ai pas Excel, est-ce qu'il fonctionne pour vous ?

Merci beaucoup !!

Edit : si je protège la feuille entière, les simples visiteurs pourront-ils utiliser le tableau ? Sinon comment faire pour ne laisser que le tableau utilisable ?

J'ai rectifié le script, car il ne remettait que la colonne A à zéro .

function raz() {
  var spreadsheet = SpreadsheetApp.getActive();
  spreadsheet.getRange('A11:D20').activate();
  spreadsheet.getActiveRangeList().clear({contentsOnly: true, skipFilteredRows: true});
  spreadsheet.getRange('A11:B11').activate();
};

Tout fonctionne sous google sheets pour moi.

Par contre, je n'ai pas Excel !

Ok super, je ferais vérifier par un ami si avec son compte google avec une simple autorisation de consultation il peut utiliser le tableau et le bouton RàZ.

Merci pour le script je n'avais pas pensé aux autres colonnes.

Je ne sais pas trop laquelle de tes réponses sélectionner comme solution, j'ai posé tellement de questions !

Bonjour,

Je ne sais pas comment partager ce fichier pour qu'il soit utilisable mais pas éditable : si je le partage en lecture seul alors le tableau n'est pas utilisable, les listes déroulantes n'apparaissent même pas, mais si je le partage en mode éditeur alors le risque que quelqu'un modifie les formules ou même s'amuse à "casser" le fichier est grand... Comment le rendre utilisable mais pas modifiable ?

Merci !

Bonjour,

Il faut mettre une protection et ne laisser que les cellules de saisies utilisables...

Merci Filoche, mais pour l'instant je n'ai protégé aucune feuille ni plage et le tableau est inutilisable, les listes déroulantes n'apparaissent pas.

Hmmm... je viens de comprendre, il faut partager en mode éditeur et protéger les plages sauf celles du tableau, cela semble fonctionner à présent.

Si éventuellement quelqu'un peut confirmer : https://docs.google.com/spreadsheets/d/1DiDTRMkHnDJpCtok3h3_epfcmowMmEsjjSkwODnb1gU/edit?usp=sharing

Oui, c'est exactement ça !

Rechercher des sujets similaires à "calcul mathematique rapport carbone azote"