VBA pour selectionner une colonne avec critère
Fermé
Fanaouer
Messages postés
12
Date d'inscription
jeudi 18 septembre 2014
Statut
Membre
Dernière intervention
23 août 2018
-
23 août 2018 à 11:25
Mike-31 Messages postés 18352 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 21 décembre 2024 - 25 août 2018 à 11:21
Mike-31 Messages postés 18352 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 21 décembre 2024 - 25 août 2018 à 11:21
A voir également:
- Vba sélectionner plusieurs colonnes
- Classer par ordre alphabétique excel plusieurs colonnes - Guide
- Word colonnes indépendantes - Guide
- Sélectionner texte pdf - Guide
- Inverser deux colonnes excel - Guide
- Figer des colonnes excel - Guide
3 réponses
Zoul67
Messages postés
1959
Date d'inscription
lundi 3 mai 2010
Statut
Membre
Dernière intervention
30 janvier 2023
149
24 août 2018 à 13:35
24 août 2018 à 13:35
Bonjour,
Si le souci c'est que le critère est contenu dans une cellule, alors passe par un UserForm.
Tu peux même créer un UserForm comprenant un calendrier si ça facilite ta recherche. Tu fais une boucle (For ou While) en VBA pour passer en revue les en-têtes de colonnes jusqu'à trouver une correspondance.
Attention aux formats des dates !
A+
Si le souci c'est que le critère est contenu dans une cellule, alors passe par un UserForm.
Tu peux même créer un UserForm comprenant un calendrier si ça facilite ta recherche. Tu fais une boucle (For ou While) en VBA pour passer en revue les en-têtes de colonnes jusqu'à trouver une correspondance.
Attention aux formats des dates !
A+
titeufdu89
Messages postés
374
Date d'inscription
samedi 28 juillet 2012
Statut
Membre
Dernière intervention
1 avril 2023
38
25 août 2018 à 10:51
25 août 2018 à 10:51
Bonjour,
En partant du principe que tes en-têtes sont contenues en ligne 1 et que la date recherchée est en saisie en B20 (à adapter à la confiugaration de ton fichier). Cette formule renverra le numéro de la colonne recherchée et est utilisable dans une autres formule RECHERCHEV ou INDEX par exemple pour indexé la colonne de recherche.
=COLONNE(INDEX(1:1;1;EQUIV(B20;1:1;0)))
Bonne journée
Jc
En partant du principe que tes en-têtes sont contenues en ligne 1 et que la date recherchée est en saisie en B20 (à adapter à la confiugaration de ton fichier). Cette formule renverra le numéro de la colonne recherchée et est utilisable dans une autres formule RECHERCHEV ou INDEX par exemple pour indexé la colonne de recherche.
=COLONNE(INDEX(1:1;1;EQUIV(B20;1:1;0)))
Bonne journée
Jc
Mike-31
Messages postés
18352
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
21 décembre 2024
5 110
25 août 2018 à 11:21
25 août 2018 à 11:21
Bonjour,
en supposant que ta cellule critère est C5 et que le code est déclenché avec un bouton ActiveX CommandButton1
Private Sub CommandButton1_Click()
Dim Jour As Date, Adresse As String
Jour = Range("C5")
With ActiveSheet
On Error GoTo Erreur
Adresse = .Rows(1).Find(Jour).Address
.Range(Adresse).EntireColumn.Select
End With
Exit Sub
Erreur:
MsgBox Jour & ": n'existe pas sur cette feuille"
End Sub
en supposant que ta cellule critère est C5 et que le code est déclenché avec un bouton ActiveX CommandButton1
Private Sub CommandButton1_Click()
Dim Jour As Date, Adresse As String
Jour = Range("C5")
With ActiveSheet
On Error GoTo Erreur
Adresse = .Rows(1).Find(Jour).Address
.Range(Adresse).EntireColumn.Select
End With
Exit Sub
Erreur:
MsgBox Jour & ": n'existe pas sur cette feuille"
End Sub