VBA Remplacer le numéro de colonne par son nom

Gil_Se

XLDnaute Occasionnel
Bonjour à tous.
Je me suis servi de l'enregistreur de macro pour exécuter un filtre:

Private Sub BtnConjoint_Click()
Application.ScreenUpdating = False
RAZ
Selection.AutoFilter Field:=17, Criteria1:="C"
Application.ScreenUpdating = True
End Sub

J'ai nommé la colonne 17 par "statut".
Comment faire dans la macro pour remplacer le numéro de la colonne "17" par son nom "statut" ?
Gil
 

Robert

XLDnaute Barbatruc
Repose en paix
Re : VBA Remplacer le numéro de colonne par son nom

Bonjour Gil_se, bonjour le forum,

Ça m'étonne pas. Regarde ce que dis l'aide de VBA sur Autofilter et Fied :
Field Argument de type Variant facultatif. Il s'agit du décalage de type entier du champ que vous souhaitez utiliser comme référence pour définir le filtre (à partir de la gauche de la liste ; le champ situé le plus à gauche est le champ un).

Je ne comprends pas pourquoi tu veux remplacer 17 ???
 

Robert

XLDnaute Barbatruc
Repose en paix
Re : VBA Remplacer le numéro de colonne par son nom

Bonjour Gil_se, bonjour le forum,

Ben à la place de 17, non... ? (non testé)

Code:
Private Sub BtnConjoint_Click()
Application.ScreenUpdating = False
RAZ
Selection.AutoFilter Field:=[COLOR=red]Range("statut").Column[/COLOR], Criteria1:="C"
Application.ScreenUpdating = True
End Sub
 

Gil_Se

XLDnaute Occasionnel
Re : VBA Remplacer le numéro de colonne par son nom

J'ai remplacé la ligne
Selection.AutoFilter Field:=Range("statut").Column, Criteria1:="C"
La macro fonctionne mais, de nouveau, si j'insère une colonne, la macro ne fonctionne plus:
"Erreur définie par l'application ou par l'objet"
 

Robert

XLDnaute Barbatruc
Repose en paix
Re : VBA Remplacer le numéro de colonne par son nom

Bonjour Gil_se, bonjour le forum,

Je ne sais pas... Comme tu as vu dans l'aide il s'agit d'un décalage donc il est possible que, selon où tu insères ta colonne, ça plante...

On pourrais peut t'être t'aider mieux si tu consentais à mettre une fichier exemple en pièce jointe...
 

Gil_Se

XLDnaute Occasionnel
Re : VBA Remplacer le numéro de colonne par son nom

Voici un fichier d'exemple.
Si j'insère, par exemple, une colonne entre C & D la macro ne fonctionne plus.
 

Pièces jointes

  • Gil_Se.xls
    29.5 KB · Affichages: 244
  • Gil_Se.xls
    29.5 KB · Affichages: 284
  • Gil_Se.xls
    29.5 KB · Affichages: 287

JCGL

XLDnaute Barbatruc
Re : VBA Remplacer le numéro de colonne par son nom

Bonjour à tous,
Salut Robert,

Il me semble qu'il faut que ta colonne insérée ait une entête de colonne pour permettre les filtres.

A++
A+ à tous
 
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
312 328
Messages
2 087 317
Membres
103 515
dernier inscrit
Cherbil12345