Macro sur excel

Fermé
conseilbw - 3 juin 2011 à 17:58
 coneilbw - 16 juin 2011 à 22:28
Bonjour,

voila j'ai un tableau sur excel avec des filtre

je veux crée une macro qui me permet en cliquant sur un bouton d'avoir par exemple qu'un seul département ou ville;

je peux le faire directement par les filtres mais je veux une macro qui souvegard mes filtres d'analyse par un clic, comme si je suis spécifier le chemin au lieu de le refaire moi meme.

merci de votre aide ca va beaucoup m'aider comme je debut sur les macro.



A voir également:

1 réponse

melanie1324 Messages postés 1505 Date d'inscription vendredi 25 mai 2007 Statut Membre Dernière intervention 31 janvier 2018 154
7 juin 2011 à 09:59
Bonjour,

Pour ce que tu veux faire, voici ce que je te conseille de faire.
Tu enregistres une macro (Outils, macro, nouvelle macro).
tu appliques ton premier filtre. et tu arrêtes l'enregistrement de la macro(outils, macro, arreter l'enregistrement).
tu renommes la macro en fonction de ton filtre. Normalement, si tu la relances, elle fonctionne.
Tu fais ca pour chacun de tes filtres que tu souhaites.
0
Merci melanie,

ca marche trés bien c'est très gentil.

par contre lorsque je clic sur mon bouton qui enclanche les filtre mon ecran Excel bouge trop. (tremble).
y a il une solution qui permet d 'eviter la page Excel qui bouge pendant l'actualisation des filtres.
merci beaucoup ca ma beaucoup aider.
0
melanie1324 Messages postés 1505 Date d'inscription vendredi 25 mai 2007 Statut Membre Dernière intervention 31 janvier 2018 154
7 juin 2011 à 16:08
Re,

pour ca, tu vas dans outils, macro, visual basic editor et dans chacun des modules sit u en as plusieurs, tu as de slignes qui sont écrites.
En dessous de toutes celles qui commencent par sub ....

tu mets :
Application.ScreenUpdating = False
ton écran devrait rester fixe.
0
conseilbw Messages postés 9 Date d'inscription mardi 31 mai 2011 Statut Membre Dernière intervention 12 juillet 2011
16 juin 2011 à 14:06
bonjour,

Comme je suis debutant en vba je vois pas trop ou placer
Application.ScreenUpdating = False

je te donne ma macro, si tu peux me dire ou le mettre

Sub MacroInjectiondedonnée()
'
' MacroInjectiondedonnée Macro
'

'
Range("D7:K9").Select
Range(Selection, Selection.End(xlDown)).Select
Selection.ClearContents
ActiveWindow.ScrollWorkbookTabs Sheets:=-1
ActiveWindow.ScrollWorkbookTabs Sheets:=-1
Sheets("eotp 2011 JANV_MAI").Select
ActiveWindow.ScrollColumn = 3
ActiveWindow.ScrollColumn = 2
ActiveWindow.ScrollColumn = 1
Range("C4").Select
Range(Selection, Selection.End(xlToRight)).Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Copy
ActiveWindow.ScrollWorkbookTabs Sheets:=1
Sheets("base de données bip ").Select
ActiveWindow.SmallScroll Down:=-9
Range("D7").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Range("D7").Select
Range(Selection, Selection.End(xlDown)).Select
ActiveWindow.SmallScroll Down:=12
Range("D1325").Select
Sheets("EOTP 2010 JANV_MAI").Select
ActiveWindow.ScrollColumn = 2
ActiveWindow.ScrollColumn = 1
Range("C7").Select
Range(Selection, Selection.End(xlToRight)).Select
Range(Selection, Selection.End(xlDown)).Select
Application.CutCopyMode = False
Selection.Copy
Sheets("base de données bip ").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Range("D1325").Select
Range(Selection, Selection.End(xlDown)).Select
ActiveWindow.SmallScroll Down:=6
Range("D1795").Select
Sheets("CCT 2011").Select
ActiveWindow.ScrollColumn = 3
ActiveWindow.ScrollColumn = 2
Range("C7").Select
Range(Selection, Selection.End(xlToRight)).Select
Range(Selection, Selection.End(xlDown)).Select
Application.CutCopyMode = False
Selection.Copy
Sheets("base de données bip ").Select
Range("D1795").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Range("D1795").Select
Range(Selection, Selection.End(xlDown)).Select
ActiveWindow.SmallScroll Down:=9
Range("D2728").Select
Sheets("CCT 2010").Select
ActiveWindow.ScrollColumn = 3
ActiveWindow.ScrollColumn = 2
Range("C8").Select
Range(Selection, Selection.End(xlToRight)).Select
Range(Selection, Selection.End(xlDown)).Select
Application.CutCopyMode = False
Selection.Copy
Sheets("base de données bip ").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ActiveWindow.SmallScroll Down:=9
Rows("2737:2824").Select
Application.CutCopyMode = False
Selection.Delete Shift:=xlUp
Range("C2736").Select
ActiveWindow.ScrollRow = 2722
ActiveWindow.ScrollRow = 2716
ActiveWindow.ScrollRow = 2711
ActiveWindow.ScrollRow = 2695
ActiveWindow.ScrollRow = 2684
ActiveWindow.ScrollRow = 2667
ActiveWindow.ScrollRow = 2651
ActiveWindow.ScrollRow = 2629
ActiveWindow.ScrollRow = 2608
ActiveWindow.ScrollRow = 2586
ActiveWindow.ScrollRow = 2564
ActiveWindow.ScrollRow = 2531
ActiveWindow.ScrollRow = 2510
ActiveWindow.ScrollRow = 2493
ActiveWindow.ScrollRow = 2477
ActiveWindow.ScrollRow = 2455
ActiveWindow.ScrollRow = 2433
ActiveWindow.ScrollRow = 2412
ActiveWindow.ScrollRow = 2390
ActiveWindow.ScrollRow = 2357
ActiveWindow.ScrollRow = 2330
ActiveWindow.ScrollRow = 2303
ActiveWindow.ScrollRow = 2265
ActiveWindow.ScrollRow = 2232
ActiveWindow.ScrollRow = 2199
ActiveWindow.ScrollRow = 2156
ActiveWindow.ScrollRow = 2118
ActiveWindow.ScrollRow = 2080
ActiveWindow.ScrollRow = 2042
ActiveWindow.ScrollRow = 2014
ActiveWindow.ScrollRow = 1971
ActiveWindow.ScrollRow = 1938
ActiveWindow.ScrollRow = 1906
ActiveWindow.ScrollRow = 1873
ActiveWindow.ScrollRow = 1840
ActiveWindow.ScrollRow = 1802
ActiveWindow.ScrollRow = 1770
ActiveWindow.ScrollRow = 1731
ActiveWindow.ScrollRow = 1699
ActiveWindow.ScrollRow = 1661
ActiveWindow.ScrollRow = 1623
ActiveWindow.ScrollRow = 1590
ActiveWindow.ScrollRow = 1557
ActiveWindow.ScrollRow = 1519
ActiveWindow.ScrollRow = 1481
ActiveWindow.ScrollRow = 1454
ActiveWindow.ScrollRow = 1427
ActiveWindow.ScrollRow = 1394
ActiveWindow.ScrollRow = 1372
ActiveWindow.ScrollRow = 1345
ActiveWindow.ScrollRow = 1323
ActiveWindow.ScrollRow = 1296
ActiveWindow.ScrollRow = 1274
ActiveWindow.ScrollRow = 1253
ActiveWindow.ScrollRow = 1225
ActiveWindow.ScrollRow = 1204
ActiveWindow.ScrollRow = 1187
ActiveWindow.ScrollRow = 1166
ActiveWindow.ScrollRow = 1149
ActiveWindow.ScrollRow = 1127
ActiveWindow.ScrollRow = 1111
ActiveWindow.ScrollRow = 1095
ActiveWindow.ScrollRow = 1084
ActiveWindow.ScrollRow = 1068
ActiveWindow.ScrollRow = 1057
ActiveWindow.ScrollRow = 1040
ActiveWindow.ScrollRow = 1029
ActiveWindow.ScrollRow = 1013
ActiveWindow.ScrollRow = 1002
ActiveWindow.ScrollRow = 986
ActiveWindow.ScrollRow = 975
ActiveWindow.ScrollRow = 964
ActiveWindow.ScrollRow = 953
ActiveWindow.ScrollRow = 942
ActiveWindow.ScrollRow = 926
ActiveWindow.ScrollRow = 915
ActiveWindow.ScrollRow = 904
ActiveWindow.ScrollRow = 888
ActiveWindow.ScrollRow = 872
ActiveWindow.ScrollRow = 855
ActiveWindow.ScrollRow = 839
ActiveWindow.ScrollRow = 828
ActiveWindow.ScrollRow = 812
ActiveWindow.ScrollRow = 801
ActiveWindow.ScrollRow = 785
ActiveWindow.ScrollRow = 774
ActiveWindow.ScrollRow = 763
ActiveWindow.ScrollRow = 752
ActiveWindow.ScrollRow = 741
ActiveWindow.ScrollRow = 736
ActiveWindow.ScrollRow = 725
ActiveWindow.ScrollRow = 719
ActiveWindow.ScrollRow = 714
ActiveWindow.ScrollRow = 708
ActiveWindow.ScrollRow = 703
ActiveWindow.ScrollRow = 698
ActiveWindow.ScrollRow = 692
ActiveWindow.ScrollRow = 681
ActiveWindow.ScrollRow = 670
ActiveWindow.ScrollRow = 659
ActiveWindow.ScrollRow = 649
ActiveWindow.ScrollRow = 643
ActiveWindow.ScrollRow = 632
ActiveWindow.ScrollRow = 621
ActiveWindow.ScrollRow = 610
ActiveWindow.ScrollRow = 605
ActiveWindow.ScrollRow = 594
ActiveWindow.ScrollRow = 583
ActiveWindow.ScrollRow = 572
ActiveWindow.ScrollRow = 561
ActiveWindow.ScrollRow = 545
ActiveWindow.ScrollRow = 534
ActiveWindow.ScrollRow = 529
ActiveWindow.ScrollRow = 518
ActiveWindow.ScrollRow = 507
ActiveWindow.ScrollRow = 496
ActiveWindow.ScrollRow = 480
ActiveWindow.ScrollRow = 474
ActiveWindow.ScrollRow = 469
ActiveWindow.ScrollRow = 458
ActiveWindow.ScrollRow = 447
ActiveWindow.ScrollRow = 436
ActiveWindow.ScrollRow = 420
ActiveWindow.ScrollRow = 398
ActiveWindow.ScrollRow = 376
ActiveWindow.ScrollRow = 349
ActiveWindow.ScrollRow = 322
ActiveWindow.ScrollRow = 295
ActiveWindow.ScrollRow = 268
ActiveWindow.ScrollRow = 246
ActiveWindow.ScrollRow = 224
ActiveWindow.ScrollRow = 202
ActiveWindow.ScrollRow = 181
ActiveWindow.ScrollRow = 153
ActiveWindow.ScrollRow = 132
ActiveWindow.ScrollRow = 115
ActiveWindow.ScrollRow = 99
ActiveWindow.ScrollRow = 88
ActiveWindow.ScrollRow = 77
ActiveWindow.ScrollRow = 72
ActiveWindow.ScrollRow = 61
ActiveWindow.ScrollRow = 55
ActiveWindow.ScrollRow = 50
ActiveWindow.ScrollRow = 45
ActiveWindow.ScrollRow = 39
ActiveWindow.ScrollRow = 34
ActiveWindow.ScrollRow = 28
ActiveWindow.ScrollRow = 23
ActiveWindow.ScrollRow = 17
ActiveWindow.ScrollRow = 12
ActiveWindow.ScrollRow = 6
ActiveWindow.ScrollRow = 1
Range("B3").Select
End Sub

merci beaucoup de votre aide
0
melanie1324 Messages postés 1505 Date d'inscription vendredi 25 mai 2007 Statut Membre Dernière intervention 31 janvier 2018 154
16 juin 2011 à 14:31
recopies ca et ca ira

Sub MacroInjectiondedonnée()
'
' MacroInjectiondedonnée Macro
'
Application.ScreenUpdating = False

'
Range("D7:K9").Select
Range(Selection, Selection.End(xlDown)).Select
Selection.ClearContents
ActiveWindow.ScrollWorkbookTabs Sheets:=-1
ActiveWindow.ScrollWorkbookTabs Sheets:=-1
Sheets("eotp 2011 JANV_MAI").Select
ActiveWindow.ScrollColumn = 3
ActiveWindow.ScrollColumn = 2
ActiveWindow.ScrollColumn = 1
Range("C4").Select
Range(Selection, Selection.End(xlToRight)).Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Copy
ActiveWindow.ScrollWorkbookTabs Sheets:=1
Sheets("base de données bip ").Select
ActiveWindow.SmallScroll Down:=-9
Range("D7").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Range("D7").Select
Range(Selection, Selection.End(xlDown)).Select
ActiveWindow.SmallScroll Down:=12
Range("D1325").Select
Sheets("EOTP 2010 JANV_MAI").Select
ActiveWindow.ScrollColumn = 2
ActiveWindow.ScrollColumn = 1
Range("C7").Select
Range(Selection, Selection.End(xlToRight)).Select
Range(Selection, Selection.End(xlDown)).Select
Application.CutCopyMode = False
Selection.Copy
Sheets("base de données bip ").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Range("D1325").Select
Range(Selection, Selection.End(xlDown)).Select
ActiveWindow.SmallScroll Down:=6
Range("D1795").Select
Sheets("CCT 2011").Select
ActiveWindow.ScrollColumn = 3
ActiveWindow.ScrollColumn = 2
Range("C7").Select
Range(Selection, Selection.End(xlToRight)).Select
Range(Selection, Selection.End(xlDown)).Select
Application.CutCopyMode = False
Selection.Copy
Sheets("base de données bip ").Select
Range("D1795").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Range("D1795").Select
Range(Selection, Selection.End(xlDown)).Select
ActiveWindow.SmallScroll Down:=9
Range("D2728").Select
Sheets("CCT 2010").Select
ActiveWindow.ScrollColumn = 3
ActiveWindow.ScrollColumn = 2
Range("C8").Select
Range(Selection, Selection.End(xlToRight)).Select
Range(Selection, Selection.End(xlDown)).Select
Application.CutCopyMode = False
Selection.Copy
Sheets("base de données bip ").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ActiveWindow.SmallScroll Down:=9
Rows("2737:2824").Select
Application.CutCopyMode = False
Selection.Delete Shift:=xlUp
Range("C2736").Select

Range("B3").Select
End Sub
0
conseilbw Messages postés 9 Date d'inscription mardi 31 mai 2011 Statut Membre Dernière intervention 12 juillet 2011
16 juin 2011 à 15:14
merci ca marche super bien

merci
0