Quel formule utiliser ?

fabri51 -  
yclik Messages postés 3874 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour, voici ma question.

J'ai une quantité initial en A1 (ex: 10), une quantité réel stockée en A2 (ex: 8) et une quantité prélevée en A3 a définir.

J'aimerai que lorsque je rentre une quantité prélevée en A3 par exemple 2 cela me fasse la soustraction en A2 donc 6 et que cette valeur reste pour la prochaine saisie. C'est à dire que si je tape à nouveau 3 en A3 cela donne 6 - 3 et pas a nouveau 8 - 3

Si quelqu'un peu m'aiguiller sur la formule ça serait sympa.
Merci d'avance.

1 réponse

  1. yclik Messages postés 3874 Date d'inscription   Statut Membre Dernière intervention   1 609
     
    bonsoir
    A priori impossible via une formule.
    Une proposition de solution avec la macro ci dessous associée à un bouton ou un raccourci clavier.
    Une fois la macro associé à un bouton, saisir la sortie de stock colonne "C" et valider par entrée.
    Revenir sur la cellule et cliquer sur le bouton.

    sub destockage
    rem définition variables
    dim document   as object
    dim oSheet as object ''déclaration de la feuille 
    dim macellule_source as Double 'déclaration valeur de la cellule de saisie
    dim macellule_a_remplir as Double 'déclaration valeur de la cellule de destination
     
    oSheet = ThisComponent.sheets.GetByName("feuille1") 'nom de la feuille utilisée 
     macellule_source = thisComponent.CurrentSelection.getvalue ' valeur de la cellule active
     row_macellule_source = thisComponent.CurrentSelection.RangeAddress.StartRow + 1 ' ligne de la cellule active
     adresse_macellule_a_remplir="B"&row_macellule_source 'adresses des mise à jour changer "B" si autre colonne 
     adresse_macellule_source="C"&row_macellule_source 'adresses des mise à jour changer "C" si autre colonne 
      
     macellule_a_remplir=oSheet.getCellRangeByName(adresse_macellule_a_remplir).getvalue ' valeur de départ
     macellule_a_remplir = macellule_a_remplir - macellule_source  'calcul stock restant avec les deux cellules
     oSheet.getCellRangeByName(adresse_macellule_a_remplir).Value = macellule_a_remplir ' ecriture stock restant dans la cellule a remplir
       macellule_source= 0  'purge cellule_source
       oSheet.getCellRangeByName( adresse_macellule_source).Value = macellule_source  ' ecriture 0 dans la cellule source
    end sub
    
    1