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
| Sub Essai()
Dim c As Variant
Dim MonDico As Object, Cellule As Range
Set MonDico = CreateObject("Scripting.Dictionary")
For Each c In Sheets("Liste Encours").Range("A49:A600") 'ADAPTE TA PLAGE DE DONNÉE
MonDico.Item(c.Value) = MonDico.Item(c.Value) + 1
Next c
For Each c In MonDico.keys
If c <> "" Then
If ActiveSheet.PivotTables("Tableau croisé dynamique2").PivotFields("TDC").PivotItems(c).Visible = True Then _
ActiveSheet.PivotTables("Tableau croisé dynamique2").PivotFields("TDC").PivotItems(c).Visible = False
End If
Next c
End Sub
Sub MacroCopier()
Dim plage As Range 'plage qui contiendra les données de la feuille "Liste Encours"
Dim plage2 As Range 'plage qui contiendra les données de la feuille "Encours Copy"
Essai
Sheets("EncoursCopy").Cells.Delete
Sheets("Liste Encours").Select 'Selection feuille à copier contenant les données de MAJ
Range("A49").Select 'Initialisation
Range(Selection, Selection.End(xlToRight)).Select 'Selection 1ere ligne
Range(Selection, Selection.End(xlDown)).Select 'Selection plage entière
Selection.Copy
Set plage = Selection 'déclaration d'objet range contenant la plage des donnés de la feuille à copier
Sheets("EncoursCopy").Select 'Selection feuille de copie
Range("A1").Select 'initialisation
ActiveSheet.Paste 'colle dans la cellule active de la feuille
Selection.PasteSpecial Paste:=xlPasteColumnWidths 'colle suivant un format ici la taille des cellulles
Nombre_Ligne_copie = Selection.Rows.Count 'Compte le nombre de lignes de la feuille de copie
Set plage2 = Selection 'déclaration d'objet range contenant la plage des donnés de la feuille de copie
'mise a jour
End Sub |