cs_laglobule
Messages postés29Date d'inscriptionmardi 16 juillet 2002StatutMembreDernière intervention 1 août 2002
-
22 juil. 2002 à 11:31
cs_laglobule
Messages postés29Date d'inscriptionmardi 16 juillet 2002StatutMembreDernière intervention 1 août 2002
-
22 juil. 2002 à 11:36
Alors voila, dans ma BD, en gros je gere des contrats.
Pour chaque contrat, on a un priw et un cout : le prix est celui facture au client, et le cout, c'est ce que coute le contrat a la boit.
En gros : marge = prix - cout
Je cherche a faire des calculs de chiffre d affaire en fct d un mois d une annee (chaque contrat a une date)
Mais je sais pas ce qui merde, mais je n obtiens jamais le bon resultat.
Voici ma source :
Private Sub Commande120_Click()
Dim annee_recherche As String
Dim mois_recherche As String
Dim dbf As Database
Dim tuple As Recordset
Dim requete As String
Dim date_debut As Date
Dim date_fin As Date
Dim chiffre_affaire As Long
Dim marge As Long
Dim i As Integer
Dim code_contrat As String
If (IsNull(Forms![Résultat - calcul du CA pour un mois donné]![Modifiable118].Value) Or (IsNull(Forms![Résultat - calcul du CA pour un mois donné]![Modifiable116].Value))) Then
MsgBox "Un champ n'a pas été rempli... :("
Else
annee_recherche = Forms![Résultat - calcul du CA pour un mois donné]![Modifiable118].Value
mois_recherche = Forms![Résultat - calcul du CA pour un mois donné]![Modifiable116].Value
Select Case mois_recherche
Case "Janvier"
date_debut = CDate("01/01/" & annee_recherche)
date_fin = CDate("31/01/" & annee_recherche)
Case "Février"
date_debut = CDate("01/02/" & annee_recherche)
date_fin = CDate("28/02/" & annee_recherche)
Case "Mars"
date_debut = CDate("01/03/" & annee_recherche)
date_fin = CDate("31/03/" & annee_recherche)
Case "Avril"
date_debut = CDate("01/04/" & annee_recherche)
date_fin = CDate("30/04/" & annee_recherche)
Case "Mai"
date_debut = CDate("01/05/" & annee_recherche)
date_fin = CDate("31/05/" & annee_recherche)
Case "Juin"
date_debut = CDate("01/06/" & annee_recherche)
date_fin = CDate("30/06/" & annee_recherche)
Case "Juillet"
date_debut = CDate("01/07/" & annee_recherche)
date_fin = CDate("31/07/" & annee_recherche)
Case "Août"
date_debut = CDate("01/08/" & annee_recherche)
date_fin = CDate("31/08/" & annee_recherche)
Case "Septembre"
date_debut = CDate("01/09/" & annee_recherche)
date_fin = CDate("30/09/" & annee_recherche)
Case "Octobre"
date_debut = CDate("01/10/" & annee_recherche)
date_fin = CDate("31/10/" & annee_recherche)
Case "Novembre"
date_debut = CDate("01/11/" & annee_recherche)
date_fin = CDate("30/11/" & annee_recherche)
Case "Décembre"
date_debut = CDate("01/12/" & annee_recherche)
date_fin = CDate("31/12/" & annee_recherche)
Case Else
MsgBox "Le mois que vous venez d'insérer est incorrect..."
End Select
If tuple.RecordCount = 0 Then
MsgBox "Il n'existe pas de contrat enregistré pendant ce mois..."
Else
chiffre_affaire = 0
For i = 1 To tuple.RecordCount
marge = CLng(tuple("Prix").Value) - CLng(tuple("Cout").Value)
chiffre_affaire = chiffre_affaire + marge
tuple.MoveNext
Next i
MsgBox "Chiffre d'affaire sur la période comprise entre le " & CStr(date_debut) & " et le " & CStr(date_fin) & " : " & vbCrLf & vbCrLf & vbTab & CStr(chiffre_affaire) & " €"
End If