VBA trier par ordre alphabétique
Résolu
GustavoSRP
Messages postés
8
Date d'inscription
Statut
Membre
Dernière intervention
-
GustavoSRP Messages postés 8 Date d'inscription Statut Membre Dernière intervention -
GustavoSRP Messages postés 8 Date d'inscription Statut Membre Dernière intervention -
Bonjour à tous,
Je veux trier par ordre alphabétique les données dans la colonne B mais seulement à partir de la cellule B3. Ensuite, toutes les données des colonnes adjacentes (c, d, e, f, etc.) doivent suivre le triage en respectant la ligne correspondante.
La colonne A ne doit pas être affectée par le triage.
Comment faire?
Voici ce que j'ai tenté mais ça ne fonctionne pas car le triage se fait à partir de la cellule B2 et il affecte aussi à la colonne A.
Des suggestions?
Merci d'avance à tout le monde
EDIT : Ajout du LANGAGE dans les balises de code (la coloration syntaxique).
Explications disponibles ici :
https://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code
Merci d'y penser dans tes prochains messages.
Je veux trier par ordre alphabétique les données dans la colonne B mais seulement à partir de la cellule B3. Ensuite, toutes les données des colonnes adjacentes (c, d, e, f, etc.) doivent suivre le triage en respectant la ligne correspondante.
La colonne A ne doit pas être affectée par le triage.
Comment faire?
Voici ce que j'ai tenté mais ça ne fonctionne pas car le triage se fait à partir de la cellule B2 et il affecte aussi à la colonne A.
Private Sub Worksheet_Change(ByVal Target As Range) On Error Resume Next Range("B1").Sort Key1:=Range("B3"), _ Order1:=xlAscending, Header:=xlYes, _ OrderCustom:=1, MatchCase:=False, _ Orientation:=xlTopToBottom End Sub
Des suggestions?
Merci d'avance à tout le monde
EDIT : Ajout du LANGAGE dans les balises de code (la coloration syntaxique).
Explications disponibles ici :
https://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code
Merci d'y penser dans tes prochains messages.
A voir également:
- Par ordre alphabétique de leur nom de famille (critère principal), puis par date du plus récent au plus ancien (critère secondaire).
- Comment trier par ordre alphabétique sur excel - Guide
- Clé windows 10 famille gratuit - Guide
- Nom de l'adresse ✓ - Forum Réseaux sociaux
- Le fichier contient une liste de prénoms. triez ce tableau par ordre alphabétique des prénoms - Forum LibreOffice / OpenOffice
- Le fichier contient une liste de prénoms. triez ce tableau par ordre alphabétique des prénoms. quel mot est formé par les 6 premières lettres de la colonne code ? ✓ - Forum Bureautique
3 réponses
Bonjour,
Avec enregistreur de macro (ai seulement modifie B1 par B2), a adapter:
Avec enregistreur de macro (ai seulement modifie B1 par B2), a adapter:
Sub Macro2() ' ' Macro2 Macro ' ' Columns("B:D").Select ActiveWorkbook.Worksheets("Feuil1").Sort.SortFields.Clear ActiveWorkbook.Worksheets("Feuil1").Sort.SortFields.Add Key:=Range("B2:B21") _ , SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal With ActiveWorkbook.Worksheets("Feuil1").Sort .SetRange Range("B2:D21") .Header = xlGuess .MatchCase = False .Orientation = xlTopToBottom .SortMethod = xlPinYin .Apply End With End Sub
Bonjour f894009,
Pour activer ton code j'ai besoin d'ajouter un bouton je suppose?
Mon code je l'ai intégré directement dans la feuille, comme â il s'active automatiquement quand j'ajoute quelque chose dans la colonne B. Pas besoin de passer par un bouton.
Est-ce que je peux aussi intégrer ton code directement dans la feuille?
Merci pour ton aide.
Pour activer ton code j'ai besoin d'ajouter un bouton je suppose?
Mon code je l'ai intégré directement dans la feuille, comme â il s'active automatiquement quand j'ajoute quelque chose dans la colonne B. Pas besoin de passer par un bouton.
Est-ce que je peux aussi intégrer ton code directement dans la feuille?
Merci pour ton aide.
Bonjour,
besoin d'ajouter un bouton je suppose
Non, il suffit de modifier le code dans Worksheet_Change pour appeler la procédure ou mettre ce code dans votre procedure avec les modifier ci-dessous
Est-ce que je peux aussi intégrer ton code
Non, il faut faire un recherche de la dernière cellule non vide colonne B pour les deux
qui devient:
quand j'ajoute quelque chose dans la colonne B
Il faut modifier votre code pour ne tenir compte que des modifs des cellules colonne B vu qu'actuellement peut importe la cellule de quelque colonne que ce soit vous faite executer le code
besoin d'ajouter un bouton je suppose
Non, il suffit de modifier le code dans Worksheet_Change pour appeler la procédure ou mettre ce code dans votre procedure avec les modifier ci-dessous
Est-ce que je peux aussi intégrer ton code
Non, il faut faire un recherche de la dernière cellule non vide colonne B pour les deux
Range("B2:B21")
qui devient:
Range("B2:B" & derlig) derligétant la ligne dernière cellule non vide colonne B
quand j'ajoute quelque chose dans la colonne B
Il faut modifier votre code pour ne tenir compte que des modifs des cellules colonne B vu qu'actuellement peut importe la cellule de quelque colonne que ce soit vous faite executer le code