# Réponse finale obtenue du bot:
response = « Voici un exemple de code Python utilisant la bibliothèque `openpyxl` pour créer un tableau Excel simple de gestion des stocks avec les formules demandées :
« `python
from openpyxl import Workbook
from openpyxl.formula.parseFormula import tokenizers, parser
# Création d’un nouveau fichier Excel
wb = Workbook()
# Sélection du feuillet actif (page 1)
ws = wb.active
# Titres des colonnes
ws[‘A1’] = ‘Produit’
ws[‘B1’] = ‘Quantité en stock’
ws[‘C1’] = ‘Prix unitaire’
ws[‘D1’] = ‘Valeur totale’
# Données de test
produits = [
{‘nom’: ‘Produit 1’, ‘quantite’: 10, ‘prix’: 5.99},
{‘nom’: ‘Produit 2’, ‘quantite’: 20, ‘prix’: 9.99},
{‘nom’: ‘Produit 3’, ‘quantite’: 15, ‘prix’: 7.99}
]
# Boucle pour insérer les données dans le tableau
for i, produit in enumerate(produits):
ws.cell(row=i+2, column=1).value = produit[‘nom’]
ws.cell(row=i+2, column=2).value = produit[‘quantite’]
ws.cell(row=i+2, column=3).value = produit[‘prix’]
# Formule pour calculer la valeur totale (SOMME)
ws.cell(row=1, column=4).value = ‘SUM(B:B)*C1’
ws.calculate_dimension()
# Formulaire pour afficher la quantité en stock si le prix est supérieur à 10 euros (SI)
formule_si = parser.parse_formula(‘IF(C2>10,B2, »0″)’)
ws.cell(row=2, column=4).value = formule_si
# Formulaire pour récupérer l’indice de la ligne avec la plus grande quantité en stock (INDEX)
formule_index = parser.parse_formula(‘INDEX(A:A,MATCH(MAX(B:B),B:B,0))’)
ws.cell(row=1, column=5).value = formule_index
# Formulaire pour équivaloir à une valeur (EQUIV)
ws.cell(row=2, column=6).value = ‘=B2*10’
# Enregistrement du fichier Excel
wb.save(‘GestionStocks.xlsx’)
« `
Ce code créé un tableau Excel avec les colonnes suivantes :
| Produit | Quantité en stock | Prix unitaire | Valeur totale |
| — | — | — | — |
| … | … | … | =SUM(B:B)*C1 |
| Produit 2 | 20 | 9,99 | IF(C2>10,B2, »0″) |
| Produit 3 | 15 | 7,99 | INDEX(A:A,MATCH(MAX(B:B),B:B,0)) |
| … | … | … | =B2*10 |
Notez que les formules utilisent la notation de la bibliothèque `openpyxl` et peuvent nécessiter quelques ajustements pour être compatibles avec Excel. »