Excel tri et (macro ou pas)
Fermé
toni
-
Modifié par toni le 29/07/2010 à 12:04
Mike-31 Messages postés 18352 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 21 décembre 2024 - 30 juil. 2010 à 21:36
Mike-31 Messages postés 18352 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 21 décembre 2024 - 30 juil. 2010 à 21:36
A voir également:
- Excel tri et (macro ou pas)
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Si et excel - Guide
- Liste déroulante excel - Guide
- Word et excel gratuit - Guide
- Tri excel - Guide
13 réponses
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
30 juil. 2010 à 19:29
30 juil. 2010 à 19:29
Re,
Récupère le fichier joint, Feuille1 tri avec colonne supplémentaire et sans code VBA
Feuille2 tableau de la feuille 1 avec colonne (supplémentaire) et code VBA simple
Feuille 3 tout VBA
https://www.cjoint.com/?hEtDw20SKU
Récupère le fichier joint, Feuille1 tri avec colonne supplémentaire et sans code VBA
Feuille2 tableau de la feuille 1 avec colonne (supplémentaire) et code VBA simple
Feuille 3 tout VBA
https://www.cjoint.com/?hEtDw20SKU
Utilisateur anonyme
Modifié par Marmar66 le 29/07/2010 à 12:20
Modifié par Marmar66 le 29/07/2010 à 12:20
Bonjour,
C'est il suffit de créer un filtre (tu sélectionnes la cellule juste en haut (date), onglet données puis fitre et cliques sur filtre automatique .
Tu choisis le mois désiré en cliquant sur la cellule ou se trouve la flèche.
Tu auras donc toutes les lignes correspondant à ce mois.
C'est il suffit de créer un filtre (tu sélectionnes la cellule juste en haut (date), onglet données puis fitre et cliques sur filtre automatique .
Tu choisis le mois désiré en cliquant sur la cellule ou se trouve la flèche.
Tu auras donc toutes les lignes correspondant à ce mois.
smartway14
Messages postés
822
Date d'inscription
mercredi 15 octobre 2008
Statut
Membre
Dernière intervention
8 octobre 2011
185
29 juil. 2010 à 12:31
29 juil. 2010 à 12:31
bonjour;
pour votre problème le tableau croisé dynamique sera plus efficace (TCD)
ou avec cette formule:
=SI(MOIS(A1)=1;A1;" ")
pour votre problème le tableau croisé dynamique sera plus efficace (TCD)
ou avec cette formule:
=SI(MOIS(A1)=1;A1;" ")
je connais tous ca mais j aimerais que cela se fasse automatiquement quand on choisit dans la case A1= 7 (juillet) le filtre automatiquement fasse le tri et n'affiche que les lignes ou les dates sont au mois de juillet
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Raymond PENTIER
Messages postés
58777
Date d'inscription
lundi 13 août 2007
Statut
Contributeur
Dernière intervention
24 décembre 2024
17 259
29 juil. 2010 à 18:09
29 juil. 2010 à 18:09
Impossible à obtenir avec les fonctions classiques.
Il faudrait recourir à une macro en VBA ; te sens-tu prêt pour ça ?
Il faudrait recourir à une macro en VBA ; te sens-tu prêt pour ça ?
oui oui je me sent pret pour ca je connais pas tres bien les macro mais j en ai deja fait quelques unes dans le fichier
tu as une idee de comment presenter ca sous macro?
tu as une idee de comment presenter ca sous macro?
Raymond PENTIER
Messages postés
58777
Date d'inscription
lundi 13 août 2007
Statut
Contributeur
Dernière intervention
24 décembre 2024
17 259
30 juil. 2010 à 13:39
30 juil. 2010 à 13:39
moi personnellement, non ; mais il y a plusieurs amis dans ce forum qui en seraient capables ...
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
Modifié par Mike-31 le 30/07/2010 à 14:46
Modifié par Mike-31 le 30/07/2010 à 14:46
Salut,
Tu peux faire sans VBA, il suffit d'ajouter une colonne, avec cette formule en supposant que les dates à filtrer sur ton tableau sont en colonne C et commence en C2. En F2 par exemple colle cette formule, incrémente la vers le bas et filtre à partir de cette colonne
=SI(C2<>"";TEXTE(C2;"mmm");"")
Il est bien sur possible d'écrire un code simple pour automatiser le tri à partir de ma proposition ci-dessus, on masque la colonne F et en G1 on crée une liste déroulante contenant les mois janvier, février etc ... complété par Tous pour un affichage de toute les données
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$G$1" Then
Range("A1:H30").AutoFilter
Range("A1:H30").AutoFilter Field:=8, Criteria1:=[K1]
If [K1] = "Tous" Then Selection.AutoFilter
End If
End Sub
Il est possible d'aller plus loin avec un code VBA plus complexe
Si tu as besoin d'un modèle je te ferai ça dans la soirée
A+
Mike-31
Une période d'échec est un moment rêvé pour semer les graines du savoir.
Tu peux faire sans VBA, il suffit d'ajouter une colonne, avec cette formule en supposant que les dates à filtrer sur ton tableau sont en colonne C et commence en C2. En F2 par exemple colle cette formule, incrémente la vers le bas et filtre à partir de cette colonne
=SI(C2<>"";TEXTE(C2;"mmm");"")
Il est bien sur possible d'écrire un code simple pour automatiser le tri à partir de ma proposition ci-dessus, on masque la colonne F et en G1 on crée une liste déroulante contenant les mois janvier, février etc ... complété par Tous pour un affichage de toute les données
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$G$1" Then
Range("A1:H30").AutoFilter
Range("A1:H30").AutoFilter Field:=8, Criteria1:=[K1]
If [K1] = "Tous" Then Selection.AutoFilter
End If
End Sub
Il est possible d'aller plus loin avec un code VBA plus complexe
Si tu as besoin d'un modèle je te ferai ça dans la soirée
A+
Mike-31
Une période d'échec est un moment rêvé pour semer les graines du savoir.
le code que vous avez ecrit ne marche pas chez moi.
Que signifie la la valeur 8 prise par auto field et que dois je inscrire en K1?
et qu'entend tu par plus complexe ? cela pourrait m'interesser
Que signifie la la valeur 8 prise par auto field et que dois je inscrire en K1?
et qu'entend tu par plus complexe ? cela pourrait m'interesser
j'avais mal retranscris ca marche mais le probleme c'est qu'il prend comme en tete de tri la premiere ligne de donnee et nom pas les titres des colonnes, comment peut on regler ca. Et jaimerai savoir si il est possible que le programme s'execute tant qu'il y a des donnee au lieu de choisir une plage "Range("A1:H30")"
.
merci de ton aide en tout cas il m'est tres precieux ^^
.
merci de ton aide en tout cas il m'est tres precieux ^^
merci c est parfait sauf 1 chose qui est que que le tri commence en ligne 4 au lieu de la 2eme comme dans votre fichier (j ai contourner le probleme en cachant ces deux lignes)
merci beaucoup
merci beaucoup
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
30 juil. 2010 à 21:36
30 juil. 2010 à 21:36
Re,
Tout dépend de la solution retenue, si tu me le précises je te modifierais le code
Tout dépend de la solution retenue, si tu me le précises je te modifierais le code