IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

tri en VBA sur un tableau nommé [XL-MAC 2016]


Sujet :

Macros et VBA Excel

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    47
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Août 2010
    Messages : 47
    Points : 32
    Points
    32
    Par défaut tri en VBA sur un tableau nommé
    Bonjour,

    Voici mon questionnement , je souhaite faire un tri alphabétique sur un tableau qui a été nommé.
    Le soucis est quand je veux intégrer le code (créé par l'enregistrement d'une macro) dans un autre code, je tombe sur le fait que le tri se fait sur une rangée de cellules ex. A1:B32
    je souhaiterais remplacer A1:B32 par le nom de la plage de cellules (le tableau évolue en taille dans le temps)

    Voici le code que j'ai mis : et quand j'ajoute des lignes à mon tableau, il fait bien le tri mais dans les lignes ajoutées.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
        Range("A14").Select
        ActiveWorkbook.Worksheets("vocabulaire").Sort.SortFields.Clear
        ActiveWorkbook.Worksheets("vocabulaire").Sort.SortFields.Add2 Key:=Range( _
            "A2:A32"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= _
            xlSortNormal
        With ActiveWorkbook.Worksheets("vocabulaire").Sort
            .SetRange Range("A1:B32")
            .Header = xlYes
            .MatchCase = False
            .Orientation = xlTopToBottom
            .SortMethod = xlPinYin
            .Apply
            End With
    le nom du tableau est tableau_vocabulaire (sans les titres des colonnes) ou tableau_complet (avec les titres des colonnes)
    etant donné que je dois trier sur la première colonne du tableau (vu l'utilisation de VLookUp): elle porte le nom de FR_liste (ou NL_liste quand j'inverse les colonnes - pour le besoin )
    Merci d'avance pour votre aide.

    Fred

  2. #2
    Rédacteur
    Avatar de Philippe Tulliez
    Homme Profil pro
    Formateur, développeur et consultant Excel, Access, Word et VBA
    Inscrit en
    Janvier 2010
    Messages
    12 822
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur, développeur et consultant Excel, Access, Word et VBA

    Informations forums :
    Inscription : Janvier 2010
    Messages : 12 822
    Points : 28 727
    Points
    28 727
    Billets dans le blog
    53
    Par défaut
    Bonjour,
    je souhaiterais remplacer A1:B32 par le nom de la plage de cellules (le tableau évolue en taille dans le temps)
    Utilisez plutôt les tableaux structurés. Les lignes et les colonnes sont entièrement dynamiques

    Je vous conseille la lecture de ces deux tutoriels
    Philippe Tulliez
    Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)
    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
    Mes tutoriels : Utilisation de l'assistant « Insertion de fonction », Les filtres avancés ou élaborés dans Excel
    Mon dernier billet : Utilisation de la fonction Dir en VBA pour vérifier l'existence d'un fichier

  3. #3
    Membre habitué
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    Septembre 2019
    Messages
    151
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Chargé d'affaire

    Informations forums :
    Inscription : Septembre 2019
    Messages : 151
    Points : 185
    Points
    185
    Par défaut
    Bonsoir à tous,
    les conseils de Philippe sont toujours précieux,
    et moi je ne suis qu'un autodidacte,


    en attendant d'en savoir plus sur les tableaux structurés
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Sheets("vocabulaire").Select
    ActiveSheet.Range("tableau_complet").Sort Key1:=ActiveSheet.[A1], Order1:=xlAscending, Header:=xlYes

    ou encore mieux
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Range("tableau_complet").Sort Key1:=Sheets("vocabulaire").[A1], Order1:=xlAscending, Header:=xlYes

  4. #4
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    47
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Août 2010
    Messages : 47
    Points : 32
    Points
    32
    Par défaut
    Citation Envoyé par Philippe Tulliez Voir le message
    Un grand merci. Je vais regarder avec attention.

    Citation Envoyé par TonyNiort79 Voir le message
    merci aussi, je vais essayer et vous tenir au courant.

    Bien à vous,

  5. #5
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    47
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Août 2010
    Messages : 47
    Points : 32
    Points
    32
    Par défaut
    Citation Envoyé par TonyNiort79 Voir le message
    Bonsoir à tous,
    les conseils de Philippe sont toujours précieux,
    et moi je ne suis qu'un autodidacte,


    en attendant d'en savoir plus sur les tableaux structurés
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Sheets("vocabulaire").Select
    ActiveSheet.Range("tableau_complet").Sort Key1:=ActiveSheet.[A1], Order1:=xlAscending, Header:=xlYes

    ou encore mieux
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Range("tableau_complet").Sort Key1:=Sheets("vocabulaire").[A1], Order1:=xlAscending, Header:=xlYes
    MERCI CA FONCTIONNE ET C'est bien plus court !
    Merci

  6. #6
    Rédacteur
    Avatar de Philippe Tulliez
    Homme Profil pro
    Formateur, développeur et consultant Excel, Access, Word et VBA
    Inscrit en
    Janvier 2010
    Messages
    12 822
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur, développeur et consultant Excel, Access, Word et VBA

    Informations forums :
    Inscription : Janvier 2010
    Messages : 12 822
    Points : 28 727
    Points
    28 727
    Billets dans le blog
    53
    Par défaut
    Bonjour,
    Pour le tri d'une colonne d'un tableau structuré, à lire éventuellement ce billet titré VBA pour Excel - Comment trier une colonne d’un tableau structuré en une ligne d’instruction
    Philippe Tulliez
    Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)
    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
    Mes tutoriels : Utilisation de l'assistant « Insertion de fonction », Les filtres avancés ou élaborés dans Excel
    Mon dernier billet : Utilisation de la fonction Dir en VBA pour vérifier l'existence d'un fichier

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Problème de tri en VBA sur des lignes avec boutons
    Par cvasse dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 15/03/2016, 14h51
  2. Mise en forme couleur via VBA sur un tableau croisé dynamique
    Par a.ouguerzam dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 31/03/2015, 11h41
  3. [XL-2007] Boucle sur un tableau nommé
    Par thorgal1612 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 05/11/2014, 10h10
  4. [XL-2010] [VBA] Tri multi critère sur tableau
    Par Carlito01 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 19/05/2014, 15h01
  5. [XL-2010] Pb VBA fonction tri sur grand tableau
    Par dm217492 dans le forum Excel
    Réponses: 2
    Dernier message: 28/06/2012, 13h29

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo