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 :

Automatisation de macro après appui sur un bouton.


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Futur Membre du Club
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Avril 2017
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux

    Informations forums :
    Inscription : Avril 2017
    Messages : 5
    Par défaut Automatisation de macro après appui sur un bouton.
    Bonsoir à tous,

    Après moult tatonnement j'ai pu créer une feuille excel (COLLABT) qui fait la synthèse des champs de 3 autres feuilles (COLLAB1, COLLAB2 ET COLLAB3) grace à une première macro.
    J'aimerais maintenant pouvoir automatiser l'exécution d'une macro qui sert à supprimer les doublons de ma feuille COLLABT (j'ai le résultat attendu en double, sans trop que je sache pourquoi).
    J'ai déjà enregistré la macro, mais je ne sais pas comment l'automatiser pour qu'elle supprime automatiquement les doublons après (voir même avant) l'affichage des résultats.

    Voici le code de la macro qui s'occupe de la synthèse sur COLLABT

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    Sub COLLABT()
    With Sheets("COLLABT")
      .Range("A2:O65536").Delete
      For Each sh In Sheets
        Select Case sh.Name
          Case "COLLAB1", "COLLAB2", "COLLAB3"
     
            For lg = 2 To sh.Range("A65536").End(xlUp).Row
              LgS = .UsedRange.Rows.Count + 1
              .Cells(LgS, 1) = sh.Cells(lg, 1)
              .Cells(LgS, 2) = CDate(sh.Cells(lg, 2))
              .Cells(LgS, 3) = sh.Cells(lg, 3)
              .Cells(LgS, 4) = sh.Cells(lg, 4)
              .Cells(LgS, 5) = sh.Cells(lg, 5)
              .Cells(LgS, 6) = sh.Cells(lg, 6)
              .Cells(LgS, 7) = sh.Cells(lg, 7)
              .Cells(LgS, 8) = sh.Cells(lg, 8)
              .Cells(LgS, 9) = sh.Cells(lg, 9)
              .Cells(LgS, 10) = sh.Cells(lg, 10)
              .Cells(LgS, 11) = sh.Cells(lg, 11)
              .Cells(LgS, 12) = sh.Cells(lg, 12)
              .Cells(LgS, 13) = sh.Cells(lg, 13)
              .Cells(LgS, 14) = sh.Cells(lg, 14)
              .Cells(LgS, 15) = sh.Cells(lg, 15)
     
            Next
        End Select
      Next
    End With
    End Sub
    Le code de la macro de suppression des doublons :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Sub SupDuplicates()
    '
    ' SupDuplicates Macro
    ' Suppressions de doublons
    '
     
    '
        ActiveSheet.Range("$A$1:$O$45").RemoveDuplicates Columns:=Array(1, 2, 3, 4, 5, 6, 7 _
            , 8, 9, 10, 11, 12, 13, 14, 15), Header:=xlYes
    End Sub
    Voici le résultat de l'exécution de la 1ere macro par le bouton mise à jour :

    Nom : Hgu9g.png
Affichages : 208
Taille : 161,0 Ko

    Le résultat attendu (et celui qui se produit après l'exécution de la suppression des doublons)

    Nom : oX2Wo.png
Affichages : 206
Taille : 90,9 Ko


    Merci d'avance.

  2. #2
    Expert confirmé
    Homme Profil pro
    aucune
    Inscrit en
    Avril 2016
    Messages
    7 563
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 84
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Avril 2016
    Messages : 7 563
    Par défaut
    Bonjour
    mais je ne sais pas comment l'automatiser pour qu'elle supprime automatiquement les doublons après (voir même avant) l'affichage des résultats
    Il est toujours possible d'automatiser l'outil de suppression des doublons à la fin de ta procédure (l'utilisation de l'enregistreur de macros te permettra d'en connaître le code nécessqaire)

    Il serait toutefois bien mieux de travailler a priori (contrôle avant ajout) plutôt qu'à posteriori.

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Avril 2017
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux

    Informations forums :
    Inscription : Avril 2017
    Messages : 5
    Par défaut
    Bonjour,

    Comment dois je procéder?

    Merci pour la réponse.

  4. #4
    Membre confirmé
    Homme Profil pro
    technicien
    Inscrit en
    Février 2017
    Messages
    82
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : technicien

    Informations forums :
    Inscription : Février 2017
    Messages : 82
    Par défaut
    Bonjour
    Onglet développeur dans excel,
    puis enregistrer une macro (à gauche dans le ruban)
    exécuter manuellement ce que tu souhaites faire
    arrêter l'enregistrement
    regarder le code généré dans le module créé.

    Piste à envisager l'utilisation d'un dictionnaire qui permet de supprimer les doublons? Je laisse les spécialistes répondre....

    a+

  5. #5
    Futur Membre du Club
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Avril 2017
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux

    Informations forums :
    Inscription : Avril 2017
    Messages : 5
    Par défaut
    Bonjour,

    Merci mais c'est déjà fait ,j'ai même joint le code de la macro de suppression de doublons dans mon message initial. Le problème est que je ne sais pas comment l'automatiser pour qu'elle se lance toute seule (sans raccourcis).

Discussions similaires

  1. Récuperer heure après appui sur bouton
    Par lg022 dans le forum VB.NET
    Réponses: 2
    Dernier message: 29/04/2008, 10h13
  2. Réponses: 9
    Dernier message: 23/07/2007, 15h24
  3. Intercepter l'appuie sur le bouton "Envoyer" d'Outlook
    Par Charette dans le forum API, COM et SDKs
    Réponses: 3
    Dernier message: 14/10/2005, 14h24
  4. Comment détecter quand un utilisateur appuie sur le bouton Power ?
    Par Millenod dans le forum API, COM et SDKs
    Réponses: 7
    Dernier message: 22/09/2005, 21h05
  5. Réponses: 2
    Dernier message: 26/07/2005, 15h35

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