URGENT ! OUVERTURE FILTRE PAR MACRO

  • Initiateur de la discussion baz
  • Date de début
B

baz

Guest
slt a tous,

Je recherche déserperement a faire une macro qui ouvrirai un filtre personnalisé (avec si possible commence par ...) est ce possible ?

merci de m'aider car cela devient trop urgent et je deviens fou :-(.

GRAND MERCI A VOUS.
 
C

Cyber PAPY

Guest
Mon vieux prof de math nous disait
"Messieurs, nous n'avons pas de temps à perdre alors ne nous dépêchons pas"

As tu essayé l'enregistreur de macro?
le mien me donne ceci:

Sub Macro2()
'
' Macro2 Macro
' Macro enregistrée le 01/04/2003 par Cyber PAPY
'

'
Range("E23:G41").Select
Selection.AutoFilter
'et pour rechercher si la colonne commence par "a"
Selection.AutoFilter Field:=3, Criteria1:="=a*", Operator:=xlAnd

'et pour supprimer:

Selection.AutoFilter Field:=3
Selection.AutoFilter
End Sub
 
A

A_binouze_drinker_among_others

Guest
SendKeys "+{TAB}C{ENTER}{TAB}"
Application.Dialogs(xlDialogFilter).Show n

où est l'index du chap concerné

attention l'emploi de la méthode sendkeys n'est pas géniale.
 
B

baz

Guest
merci pour ton aide cyber papy mais c pas bon car j'ai essayé deja le souci est qu'il s'agit a chque fois de champs different donc je voudrais vraiement ouvrir le fenetre pour rentrer le nom ou tout du moins faire qq chose comme ça :

Selection.Copy
Selection.AutoFilter Field:=1, Criteria1:=Selection.Paste, Operator:=xlAnd

mais ça marche pas "le selection paste."


En tout cas merci cyberpapy
 
C

C@thy

Guest
Salut baz,

pour la 2ème question :

Il faut créer une macro événementielle qui ne s'exécute qu'à la fermeture du fichier

procéder comme suit :

1) Maintenir la touche Alt appuyée et appuyer sur la touche de fonction F11
2) Afficher l'explorateur de projets si ce n'est déjà fait
3) A gauche, dans l'explorateur de projets double-cliquer sur ThisWorkbook
4) Dans le menu déroulant au milieu en haut choisir "Workbook"
5) Dans le menu déroulant en haut à droite choisir "BeforeClose"
6) au milieu des 2 lignes crées taper ça :
ThisWorkbook.Saved = True
ThisWorkbook.Close

Le résultat doit être :

Private Sub Workbook_BeforeClose(Cancel As Boolean)
ThisWorkbook.Saved = True
ThisWorkbook.Close
End Sub

Il y aura fermeture du classeur sans enregistrement.

BipBip.gif
 

Discussions similaires

Statistiques des forums

Discussions
312 448
Messages
2 088 499
Membres
103 871
dernier inscrit
julienleburton