B
Bertrand19
Guest
Bonjour,
Je suis depuis deux jours sur un problème que je n'arrive pas à résoudre... En dernier espoir, il ne me reste plus que vous qui m'avez déjà aidé auparavant!
Mon problème est le suivant.
J'ai récupéré la fonction suivante qui me permet de calculer un tableau de gestion de stock en méthode FIFO.
La fonction est la suivante:
--------------------------------------------
Function PEPS(Sommeventes As Range) As Double
Dim Achat As Range, Prixach As Range, Vente As Range
Dim I As Integer, UnitésàValo As Long
PEPS = 0
Set Achat = Range('Achat')
Set Prixach = Range('Prixach')
Set Vente = Range('Vente')
UnitésàValo = Sommeventes.Value
For I = 3 To Sommeventes.Row
PEPS = PEPS + Prixach(I, 1) * Application.WorksheetFunction.Min(UnitésàValo, Achat(I, 1))
UnitésàValo = Application.WorksheetFunction.Max(UnitésàValo - Achat(I, 1), 0)
Next I
End Function
---------------------------------------------
Cette fonction marche si je l'insère dans un classeur. Ca, c'est OK
Maintenant, je veux dupliquer mon tableau dans la même feuille.
A mon sens, pour chaque tableau créer doit être crée une nouvelle fonction du type (PEPS1, PEPS2, PEPS3....) dans laquelle sont uniquement modifier les références au cellule
C'est ce que j'ai fait
----------------------------
Function PEPS1(Sommeventes As Range) As Double
Dim Achat1 As Range, Prixach1 As Range, Vente1 As Range
Dim I As Integer, UnitésàValo As Long
PEPS1 = 0
Set Achat1 = Range('Achat1')
Set Prixach1 = Range('Prixach1')
Set Vente1 = Range('Vente1')
UnitésàValo1 = Sommeventes.Value
For I = 3 To Sommeventes.Row
PEPS1 = PEPS1 + Prixach1(I, 1) * Application.WorksheetFunction.Min(UnitésàValo, Achat1(I, 1))
UnitésàValo = Application.WorksheetFunction.Max(UnitésàValo - Achat1(I, 1), 0)
Next I
End Function
-----------------------------------
Mais ca ne marche pas
J'ai compris que:
-'Achat, prixach, vente' faisait référencent à des blocks de cellules que j'ai retrouvé et que je peux modifier dans la zone de nom des cellules
En revanche, je ne comprends pas comment marche:
-sommeventes
-unitésàvalo
Avez vous une Idée
Merci à vous
Je suis depuis deux jours sur un problème que je n'arrive pas à résoudre... En dernier espoir, il ne me reste plus que vous qui m'avez déjà aidé auparavant!
Mon problème est le suivant.
J'ai récupéré la fonction suivante qui me permet de calculer un tableau de gestion de stock en méthode FIFO.
La fonction est la suivante:
--------------------------------------------
Function PEPS(Sommeventes As Range) As Double
Dim Achat As Range, Prixach As Range, Vente As Range
Dim I As Integer, UnitésàValo As Long
PEPS = 0
Set Achat = Range('Achat')
Set Prixach = Range('Prixach')
Set Vente = Range('Vente')
UnitésàValo = Sommeventes.Value
For I = 3 To Sommeventes.Row
PEPS = PEPS + Prixach(I, 1) * Application.WorksheetFunction.Min(UnitésàValo, Achat(I, 1))
UnitésàValo = Application.WorksheetFunction.Max(UnitésàValo - Achat(I, 1), 0)
Next I
End Function
---------------------------------------------
Cette fonction marche si je l'insère dans un classeur. Ca, c'est OK
Maintenant, je veux dupliquer mon tableau dans la même feuille.
A mon sens, pour chaque tableau créer doit être crée une nouvelle fonction du type (PEPS1, PEPS2, PEPS3....) dans laquelle sont uniquement modifier les références au cellule
C'est ce que j'ai fait
----------------------------
Function PEPS1(Sommeventes As Range) As Double
Dim Achat1 As Range, Prixach1 As Range, Vente1 As Range
Dim I As Integer, UnitésàValo As Long
PEPS1 = 0
Set Achat1 = Range('Achat1')
Set Prixach1 = Range('Prixach1')
Set Vente1 = Range('Vente1')
UnitésàValo1 = Sommeventes.Value
For I = 3 To Sommeventes.Row
PEPS1 = PEPS1 + Prixach1(I, 1) * Application.WorksheetFunction.Min(UnitésàValo, Achat1(I, 1))
UnitésàValo = Application.WorksheetFunction.Max(UnitésàValo - Achat1(I, 1), 0)
Next I
End Function
-----------------------------------
Mais ca ne marche pas
J'ai compris que:
-'Achat, prixach, vente' faisait référencent à des blocks de cellules que j'ai retrouvé et que je peux modifier dans la zone de nom des cellules
En revanche, je ne comprends pas comment marche:
-sommeventes
-unitésàvalo
Avez vous une Idée
Merci à vous