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 :

Associer Cellule à un code VBA + tri automatique [XL-2003]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2011
    Messages
    54
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2011
    Messages : 54
    Par défaut Associer Cellule à un code VBA + tri automatique
    Bonjour,

    Je souhaiterais avoir un tri automatique d'une colonne par simple clique sur un bouton.
    J'ai trouvé les codes en cherchant sur le net et sur le forum et pourtant j'ai une erreur.

    Je ne m'y connais pas en VBA mais je sais que certains membres avaient pu m'apporter leur aide en prenant de leur temps.

    J'espère ainsi que vous pourrez m'aider.

    Code pour Associer un Code VBA à une cellule:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
        Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
     
        If Not Application.Intersect(Target, Range("A1")) Is Nothing Then
     
        'macro à mettre
     
        End If
    Code pour faire un trie automatique que j'insère sous 'macor à mettre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Call Private Sub CommandButton1_Click()
        [C7:D660].Select
        Selection.Sort Key1:=Range("C7"), Order1:=xlAscending
        [C7].Select
    J'ai combiné les deux pour avoir:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
     
        If Not Application.Intersect(Target, Range("A1")) Is Nothing Then
     
        'macro à mettre
    Call Private Sub CommandButton1_Click()
        [C7:D660].Select
        Selection.Sort Key1:=Range("C7"), Order1:=xlAscending
        [C7].Select
        End If
    Mais j'ai une erreur de synthaxe ou j'ai également eu le message qu' "un End Sub était attendu".

    Je précise que j'ai mis ce code en faisant un clique droit/Visualiser le code sur la feuille que je souhaite.

    J'ai des donnée sur la colonne C, celles-ci commencent en C7 (pour l'instant les données s'arretent en C19 mais je dois en rajouter un grand nombre), et je souhaite ajouter la cellule à cliquer pour le tri en C6.

    Merci d'avance.

  2. #2
    Expert confirmé Avatar de jfontaine
    Homme Profil pro
    Contrôleur de Gestion
    Inscrit en
    Juin 2006
    Messages
    4 756
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Contrôleur de Gestion

    Informations forums :
    Inscription : Juin 2006
    Messages : 4 756
    Par défaut
    Bonjour,

    Ci dessous un code qui tri la colonne ou on fait le double click, le tableau commençant ligne 7 (ligne de titre)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
        Range("A7:D" & Range("C" & Rows.Count).End(xlUp).Row).Sort Key1:=Cells(8, Target.Column), Order1:=xlAscending, Header:= _
            xlYes, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
            DataOption1:=xlSortNormal
    End Sub

  3. #3
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2011
    Messages
    54
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2011
    Messages : 54
    Par défaut
    Super, ca fonctionne impec.
    UN grand merci pour ta rapidité et ton aide.

    Pourrais tu juste m'expliquer pourquoi tu as écris:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Range("A7:D" & Range("C" & Rows.Count)
    Juste à titre d'information si on veut "étendre la séelction" lors du tri que faudrait il rajouter au code?

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

Discussions similaires

  1. [XL-2010] Code VBA tri de cellules suivant l'heure et la date
    Par Chachoumie dans le forum Macros et VBA Excel
    Réponses: 10
    Dernier message: 15/04/2015, 10h12
  2. changer un code cellule en code vba
    Par UDSP50 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 27/12/2013, 21h31
  3. Afficher dans une cellule le code VBA d'un bouton
    Par greenzephyr dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 08/11/2010, 10h01
  4. [Excel\VBA] tri par ordre alphabatique et cellule associée
    Par jefe.k dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 27/02/2007, 15h40
  5. Réponses: 2
    Dernier message: 27/10/2005, 15h51

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