cibleo
XLDnaute Impliqué
Bonsoir le forum,
Dans la feuille 2 en colonne E, j'aimerais afficher le coût mensuel du gazole au Km.
Pour cela, je divise donc les valeurs de la colonne B par celles de D.
Problème, les valeurs renvoyées en colonne B résultent d'une mauvaise méthode de calcul.
Exemple de Janvier 2012 :
Le kilométrage effectués est bien égal à 2801 (colonne D)
Le volume consommé est bien égal 151,05 litres (colonne C) mais le montant de 215,55 € n'est pas le bon.
Ce montant correspond au montant réglé en janvier 2012 mais pas au montant consommé puisque le dernier plein de janvier (26,15 Litres) n'est pas encore consommé.
Je ne vois pas du tout comment procéder, en fait le problème doit être similaire à de la gestion de stock et je ny connais rien
La capacité du réservoir est de 60 litres.
Le code dans le module 1 :
La feuille à traiter est la feuille "BT745DG"
Pouvez-vous m'aider à déterminer ce coût ?
Cibleo
Dans la feuille 2 en colonne E, j'aimerais afficher le coût mensuel du gazole au Km.
Pour cela, je divise donc les valeurs de la colonne B par celles de D.
Problème, les valeurs renvoyées en colonne B résultent d'une mauvaise méthode de calcul.
Exemple de Janvier 2012 :
Le kilométrage effectués est bien égal à 2801 (colonne D)
Le volume consommé est bien égal 151,05 litres (colonne C) mais le montant de 215,55 € n'est pas le bon.
Ce montant correspond au montant réglé en janvier 2012 mais pas au montant consommé puisque le dernier plein de janvier (26,15 Litres) n'est pas encore consommé.
Je ne vois pas du tout comment procéder, en fait le problème doit être similaire à de la gestion de stock et je ny connais rien
La capacité du réservoir est de 60 litres.
Le code dans le module 1 :
VB:
Sub Cout_Gazole()
Set mondico = CreateObject("Scripting.Dictionary")
Set mondico1 = CreateObject("Scripting.Dictionary")
Set mondico2 = CreateObject("Scripting.Dictionary")
Set mondico3 = CreateObject("Scripting.Dictionary")
For Each C In Sheets("BT745DG").Range("A4", Sheets("BT745DG").[A65536].End(xlUp))
mondico(Format(C.Value, "mmmm yyyy")) = mondico(Format(C.Value, "mmmm yyyy")) + 1
mondico1(Format(C.Value, "mmmm yyyy")) = mondico1(Format(C.Value, "mmmm yyyy")) + CDec(C.Offset(, 1).Value)
mondico2(Format(C.Value, "mmmm yyyy")) = mondico2(Format(C.Value, "mmmm yyyy")) + C.Offset(, 2).Value
mondico3(Format(C.Value, "mmmm yyyy")) = mondico3(Format(C.Value, "mmmm yyyy")) + C.Offset(, 5).Value
Next C
With Sheets("Feuil2")
.Range("A1:E" & .Range("A" & Rows.Count).End(xlUp).Row).Clear
.[A1] = "Immatriculation du véhicule : " & Mid(Sheets("BT745DG").[A1], InStrRev(Sheets("BT745DG").[A1], " ") + 1)
.[A2] = "Périodes": .[B2] = "Montants TTC": .[C2] = "Volumes"
.[D2] = "Kms effectués": .[E2] = "Coût au Km"
.[A3].Resize(mondico.Count, 1) = Application.Transpose(mondico.keys) 'Clé Périodes
.[B3].Resize(mondico.Count, 1) = Application.Transpose(mondico1.items) 'Montants Mensuels
.[C3].Resize(mondico.Count, 1) = Application.Transpose(mondico2.items) 'Volumes Mensuels
.[D3].Resize(mondico.Count, 1) = Application.Transpose(mondico3.items) 'Kms Mensuels
derli = .Range("A" & Rows.Count).End(xlUp).Row
For Lig = 3 To derli 'colonne E : Calcul du cout au km
.Cells(Lig, 5).Formula = "=" & .Cells(Lig, 2).Address & "/" & .Cells(Lig, 4).Address
' .Cells(Lig, 5).Value = .Cells(Lig, 2).Value / .Cells(Lig, 4).Value
Next
End With
End Sub
Pouvez-vous m'aider à déterminer ce coût ?
Cibleo
Pièces jointes
Dernière édition: