1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55
| Option Explicit
Sub Macro1AjouterSomme()
'
' Macro1AjouterSomme Macro
' Macro enregistrée le 07/10/2016 par Ulysse
'
' Touche de raccourci du clavier: Ctrl+Maj+P
Dim wbk As Workbook
Dim wks As Worksheet
'Avant d'utiliser la macro issue de l'enregistreur on assigne le Fichier Test à la variable wbk:
Set wbk = Workbooks("Fichier test.xls")
' On assigne la feuille "NomDeLaFeuille" (à adapter) à la variable wks
Set wks = wbk.Sheets("NomDeLaFeuille")
' Vu qu'on va travailler sur la feuiile "NomDeLaFeuille", on crée un bloc With / End With
With wks
'Insrire 10 dans la cellule J2 et la mettre dans le presse papier :
.Range("J2").Value = "$10" ' .Value plutôt que .FormulaR1C1 puisqu'il s'agit d'une valeur et pas une formule
.Range("J2").Copy
'Installer le filtre automatique :
'et filtrer les cellules "Non Vides" des colonnes D et G :
Application.CutCopyMode = False ' Tiens, pourquoi? Ceci annule le Copy précédent
.Range("J2").AutoFilter Field:=4, Criteria1:="<>", Field:=7, Criteria1:="<>"
'On remplit le presse-paier (J2=10)
.Range("J2").Copy
' Par collage spécial on ajoute 10 aux cellules de la colonne G :
.Range("G2:G16").PasteSpecial Paste:=xlPasteAll, Operation:=xlAdd, SkipBlanks:= _
False, Transpose:=False
Application.CutCopyMode = False
'On filtre les cellules non vides de la colonne D :
.Range("G2:G16").AutoFilter Field:=4, Criteria1:="<>"
'On filire les cellules de la colonne A dont le contenu est "M Mme" :
.Range("A1").AutoFilter Field:=1, Criteria1:="M Mme"
'On remplit le presse-paier (J2=10) :
.Range("J2").Copy
' Par collage spécial on ajoute 10 aux cellules de la colonne G :
.Range("G2:G14").PasteSpecial Paste:=xlPasteAll, Operation:=xlAdd, SkipBlanks:= _
False, Transpose:=False
Application.CutCopyMode = False
'On s'intéresse aux couples d'adhérents NON abonnés :
.Range("G2:G14").AutoFilter Field:=1, Criteria1:="M Mme", Field:=6, Criteria1:="="
Application.CutCopyMode = False
.ShowAllData
End With
End Sub |
Partager