Explication code VBA
Est ce que quelqu'un peut m'expliquer le code VBA suivant, Merci d'avance.
Sub Récap()
Dim Lg%
Application.ScreenUpdating = False
Sheets("Trappes CDF").Copy Before:=Sheets(1)
ActiveSheet.Name = "bibi"
Lg = Range("A65536").End(xlUp).Row
'--- tri et extrait sans doublons agrément ---
Range("a5:h" & Lg).Sort Key1:=Range("e6"), Order1:=xlAscending, _
Header:=xlYes, OrderCustom:=1, MatchCase:=False
Range("j2") = "=$e6<>$e7"
Range("a5:h" & Lg).AdvancedFilter Action:=xlFilterCopy, CriteriaRange:=Range( _
"j1:j2"), CopyToRange:=Range("Extrait!a5:f5"), Unique:=True
Application.DisplayAlerts = False
Sheets("bibi").Delete
'--- tri et met les formules ---
With Sheets("Extrait")
.Activate
Lg = .Range("A65536").End(xlUp).Row
.Range("a5:h" & Lg).Sort Key1:=.Range("a6"), Order1:=xlAscending, _
Header:=xlYes, OrderCustom:=1, MatchCase:=False
.Range("h6:h" & Lg) = "=f6*g6"
.Range("g6:g" & Lg) = "=SUMPRODUCT((Agrément=d6)*(QTE))"
End With
End Sub
Sub Récap()
Dim Lg% 'DECLARATION DE VARIABLE Lg
Application.ScreenUpdating = False 'DESACTIVE LA MISE A JOUR DE L AFFICHAGE
Sheets("Trappes CDF").Copy Before:=Sheets(1) 'COPIE LA FEUILLE "Trappes CDF" AVANT LE 1ER ONGLET
ActiveSheet.Name = "bibi" 'RENOMME L ONGLET ACTIF EN bibi
Lg = Range("A65536").End(xlUp).Row ' LA VARIABLE Lg EGALE LE NUMERO DE LA DERNIERE LIGNE DU TABLEAU
'--- tri et extrait sans doublons agrément ---
Range("a5:h" & Lg).Sort Key1:=Range("e6"), Order1:=xlAscending, _ 'TRIE LA PLAGE A2:H +dernière ligne, la première ligne a des entêtes
Header:=xlYes, OrderCustom:=1, MatchCase:=False
Range("j2") = "=$e6<>$e7" 'SAISI LA FORMULE =$e6<>$e7 dans la cellule G2 (positionnement de filtre avancé)
Range("a5:h" & Lg).AdvancedFilter Action:=xlFilterCopy, CriteriaRange:=Range( _
"j1:j2"), CopyToRange:=Range("Extrait!a5:f5"), Unique:=True 'EXECUTE LE FILTRE AVANCE EN AFFICHANT LES RESULTATS DANS LA FEUILLE Extrait
Application.DisplayAlerts = False 'DESACTIVE LA MISE A JOUR DE L AFFICHAGE
Sheets("bibi").Delete
'--- tri et met les formules ---
With Sheets("Extrait") 'SELECTIONNE LA FEUILLE Extrait, TRIE LA PLAGE A5:H dernière ligne PAR ORDRE CROISSANT SUR LA CELLULE A6
.Activate
Lg = .Range("A65536").End(xlUp).Row
.Range("a5:h" & Lg).Sort Key1:=.Range("a6"), Order1:=xlAscending, _
Header:=xlYes, OrderCustom:=1, MatchCase:=False
.Range("h6:h" & Lg) = "=f6*g6" 'FORMULE A SAISIE DANS LA COLONNE H
.Range("g6:g" & Lg) = "=SUMPRODUCT((Agrément=d6)*(QTE))" 'FORMULE A SAISIR DANS LA COLONNE G
End With
End Sub