Bonjour tous le monde
Je développe une application de gestion des ventes de billets d'une entreprise.
J'explique, en fait je fais un filtre sur une feuille base nettoyée en fonction des éléments que l'utilisateur choisie à partir du formulaire accueil.
Puis je colle ces éléments dans une feuille brouillon, l'idée c'est de n'est pas avoir à à parcourir toute la feuille base nettoyée, mais seulement le cas ou le filtre doit retourner vide. Eh bien çà mouline assez longuement à mon avis avant d'alimenter les zones de textes sur le formulaire accueil.
Merci d'avance pour vos nombreuses réponses.
Sub total_vente_caisse_et_rendus_après_filtre()
Application.ScreenUpdating = False
'###################### A partir d'ici je calcule le total vente et le total caisse plus le total_rendus
' pour alimenter le formulaire acceuil.
Dim tot_caisse As Double
tot_caisse = 0
Dim tot_vente As Double
tot_vente = 0
Dim lign As Integer
lign = 3
Sheets("Brouillon").Select
'Condition pour prendre en compte uniquement le dernier conducteur filtré et la ou les dates correspondantes.
If Sheets("Brouillon").Cells(4, 9) <> "" Then
'je parcours la totalité des dates émanentes du filtre.
Do
lign = lign + 1
tot_caisse = tot_caisse + Sheets("Brouillon").Cells(lign, 24)
tot_vente = tot_vente + Sheets("Brouillon").Cells(lign, 22)
Loop Until Sheets("Brouillon").Cells(lign + 1, 9) = ""
Else
tot_vente = 0
tot_caisse = 0
End If
'j'alimente ensuite les zones de textes caisse et vente
acceuil.zt_caisse_par_conducteur = tot_caisse & " €"
acceuil.zt_vente_par_conducteur = tot_vente & " €"
'jenlève le filtre sur impression caisse
Sheets("Base_nettoyée").Range("$A$2:$W$50000").AutoFilter Field:=11
Application.ScreenUpdating = True
End Sub