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 :

Macro tri sur feuille active


Sujet :

Macros et VBA Excel

  1. #1
    Membre actif
    Homme Profil pro
    Cabinet de gestion
    Inscrit en
    Octobre 2011
    Messages
    80
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Cabinet de gestion
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2011
    Messages : 80
    Par défaut Macro tri sur feuille active
    Bonjour à tous,

    Toujours aussi nul en VBA (j'avance quand même un peu).

    L'écriture (automatique) de la macro me donne ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Rows("2:10000").Select
        ActiveWorkbook.Worksheets("Smatr").Sort.SortFields.Clear
        ActiveWorkbook.Worksheets("Smatr").Sort.SortFields.Add Key:=Range("D2:D10000"), _
            SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
        With ActiveWorkbook.Worksheets("Smatr").Sort
            .SetRange Range("A2:P10000")
            .Header = xlGuess
            .MatchCase = False
            .Orientation = xlTopToBottom
            .SortMethod = xlPinYin
            .Apply
        End With
    "Smatr" est le nom de l'une des feuilles dans mon classeur et j'aime le changer pour que la macro s'éxécute sur n'importe quelle feuille de mon classeur.

    Un grand merci pour votre aide.

  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
    13 149
    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 : 13 149
    Billets dans le blog
    53
    Par défaut
    Bonjour,
    Tu peux toujours utiliser une procédure toute faite que j'ai écrite et que j'ai mise en contribution.
    Le lien se trouve en dessous de ma signature et il y a un fichier téléchargeable avec des exemples.
    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 éclairé
    Femme Profil pro
    Inscrit en
    Février 2013
    Messages
    56
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Février 2013
    Messages : 56
    Par défaut
    Bonjour,

    Si la BD commence en A1 et s'il y a une ligne de titres, cette macro tri la feuille active.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    Sub tri()
       [A1].Sort key1:=[A1], Order1:=xlAscending, Header:=xlYes
    End Sub
    Si la BD n'est pas dans la feuille active

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    Sub tri()
       Set f = Sheets("BD")      ' feuille à trier
       f.[A1].Sort key1:=f.[A1], Order1:=xlAscending, Header:=xlYes
    End Sub
    Ceuzin

  4. #4
    Membre actif
    Homme Profil pro
    Cabinet de gestion
    Inscrit en
    Octobre 2011
    Messages
    80
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Cabinet de gestion
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2011
    Messages : 80
    Par défaut Merci pour vos réponses
    Pour Philippe

    j'ai téléchargé votre fichier et je vais voir ce soir si j'y trouve mon bonheur.
    Un grand merci.

    Pour Sophie
    Un grand merci aussi mais je n'ai pas bien compris.

    1- Les tris que j'ai à faire peuvent porter sur :
    - des lignes complètes,
    - des lignes incomplètes ( de A4 à G1000, par exemple)
    ça peut commencer sur Z ou G etc...

    2-je ne vois pas où "inclure" vos lignes d'écritures dans ma ou mes macros de tris ?

    Enfin, dans mon classeur, j'ai par exemple les feuilles suivantes :

    - Smatr (ma feuille matrice qui reste ma base)
    - S1 ou S2 etc. qui seront mes feuilles de stockage d'infos après exécution de mes macros.

    Mon souhait : je voudrais que cette macro s'éxécute sur la feuille active ( S1, S2 etc.

    Encore un grand merci pour votre aide.
    Lionel,

Discussions similaires

  1. [XL-2010] Exécution d'une macro VBA sur feuilles et données verrouillées
    Par lysere dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 28/02/2014, 14h05
  2. [XL-2003] Macro tri sur feuille protégée et classeur partagé
    Par bralbouy dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 29/12/2011, 16h05
  3. [XL-2003] Macro tri sur feuille protégée et classeur partagé
    Par bralbouy dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 29/12/2011, 14h47
  4. [XL-2003] Retour sur feuille active
    Par magnum812 dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 20/06/2011, 13h59
  5. Rapidité Macro lié à la feuille active
    Par conconbrr dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 14/08/2006, 17h40

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