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 :

Ajouter un bouton pour copier une ligne "type" et la coller en dernier [Toutes versions]


Sujet :

Macros et VBA Excel

  1. #1
    Candidat au Club
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Mars 2019
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2019
    Messages : 4
    Points : 2
    Points
    2
    Par défaut Ajouter un bouton pour copier une ligne "type" et la coller en dernier
    Bonjour à tous,

    Je suis PMO dans une équipe d'intégration de progiciel, j'ai créé un fichier Excel pour que l'équipe renseigne ses imputations.

    Je souhaiterai ajouter un bouton qui copie ma ligne "type" A33:BM33 et la colle en dernier au fur et à mesure lorsqu'ils souhaitent ajouter une activité.

    Je ne sais pas si je suis clair,

    Vous trouverez le fichier à ce lien car 9Mo http://dl.free.fr/evFqI4Qtu ,

    Je reste à votre disposition,

    Par avance, merci beaucoup
    Charles

  2. #2
    Expert éminent sénior Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Points : 32 866
    Points
    32 866
    Par défaut
    Citation Envoyé par charlesb95 Voir le message
    Je souhaiterai ajouter un bouton qui copie ma ligne "type" A33:BM33 et la colle en dernier au fur et à mesure lorsqu'ils souhaitent ajouter une activité.
    Pour repérer la dernière ligne utilisée, propriété End, de préférence avec le paramètre xlUp.
    https://msdn.microsoft.com/fr-fr/lib...9(v=office.15)

    Pour faire une copie, méthode Copy de Range.
    https://msdn.microsoft.com/fr-fr/lib...0(v=office.15)
    Merci de cliquer sur pour chaque message ayant aidé puis sur pour clore cette discussion.

  3. #3
    Modérateur

    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    15 331
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 15 331
    Points : 23 786
    Points
    23 786
    Par défaut
    Bonjour.

    Quelque chose comme cela à mettre "dans" le code associé à la feuille

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    public sub CopierLigneType()
        dim source as range
         set source=me.range("A33:BM33")
        source.copy
     
        dim cible as range
        set cible=me.range("A33:A" & me.rows.count).find("") 'Trouve la 1ère cellule libre affichée (attention si il y a des filtres ça peut poser des problèmes)
     
        if not cible is nothing then
            call cible.PasteSpecial(xlPasteAll)
        end if
     
    end sub
    Après tu as juste à associer la macro au bouton.

    A+
    Vous voulez une réponse rapide et efficace à vos questions téchniques ?
    Ne les posez pas en message privé mais dans le forum, vous bénéficiez ainsi de la compétence et de la disponibilité de tous les contributeurs.
    Et aussi regardez dans la FAQ Access et les Tutoriaux Access. C'est plein de bonnes choses.

  4. #4
    Expert éminent sénior Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Points : 32 866
    Points
    32 866
    Par défaut
    Citation Envoyé par marot_r Voir le message
    Quelque chose comme cela à mettre "dans" le code associé à la feuille
    Perso, je ne prendrais pas la peine de faire un UserForm pour si peu.
    J'associerais la macro à une simple forme dans la feuille de calcul ou (mieux) je créerais une icone dans la barre d'outils à accès rapide.
    Merci de cliquer sur pour chaque message ayant aidé puis sur pour clore cette discussion.

  5. #5
    Candidat au Club
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Mars 2019
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2019
    Messages : 4
    Points : 2
    Points
    2
    Par défaut
    Citation Envoyé par Menhir Voir le message
    Perso, je ne prendrais pas la peine de faire un UserForm pour si peu.
    J'associerais la macro à une simple forme dans la feuille de calcul ou (mieux) je créerais une icone dans la barre d'outils à accès rapide.
    Bonjour Menhir et à tous,

    Merci pour vos retours, mais à vrai dire, je ne sais même pas ajouter de macro ni de code donc tout ce que vous me dites est du "chinois" pour moi.

    Je ne sais pas comment m'y prendre, juste avoir un bouton ou autre permettant de copier la ligne type en dernier.

    Toutes vos propositions sont les bienvenues (si vous pouvez ajouter ce code/bouton dans mon fichier je vous en serai énormément reconnaissant)

    Merci bcp,
    Charles

  6. #6
    Expert éminent
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    3 453
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 3 453
    Points : 6 871
    Points
    6 871
    Par défaut
    Bonjour,

    Une piste à mettre dans un module standard (depuis Excel, maintenir la touche Alt puis appui sur touche F11 (tu entres dans le VBE), sur la lettre I et enfin sur la lettre M et coller le code dans la zone de texte qui vient d'apparaître à droite) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    Sub Recopier()
     
        With Worksheets("Imputation")
            .Rows(33).Copy .Rows(.Cells(.Rows.Count, 1).End(xlUp).Row + 1)
        End With
     
    End Sub
    Ensuite, revenir sur Excel, clic droit sur la barre d'outils Accès rapide puis sur le bouton "Personnaliser la barre d'outils Accès rapide" dans la liste de choix "Choisir les commandes..." cliquer sur "Macros" et dans la liste dessous cliquer sur "Recopier" (surligner le nom de la macro ci-dessus), dans la liste de droite, tu cliques sur le bouton après lequel tu veux avoir le bouton de commande de la macro, clic sur le bouton "Ajouter" et enfin, sur le bouton "OK".
    A chaque clic sur ce bouton qui commande la macro, la ligne 33 sera copiée sur la première ligne vide en bas de ton tableau

  7. #7
    Expert éminent sénior Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Points : 32 866
    Points
    32 866
    Par défaut
    Citation Envoyé par charlesb95 Voir le message
    Je ne sais pas comment m'y prendre
    Toutes vos propositions sont les bienvenues
    J'espère que celle-ci sera bienvenue : http://bidou.developpez.com/article/VBA/

    si vous pouvez ajouter ce code/bouton dans mon fichier je vous en serai énormément reconnaissant
    Le jour où j'ouvrirai un lien externe proposé par un inconnu sur un forum, il gèlera en enfer.
    Merci de cliquer sur pour chaque message ayant aidé puis sur pour clore cette discussion.

  8. #8
    Candidat au Club
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Mars 2019
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2019
    Messages : 4
    Points : 2
    Points
    2
    Par défaut
    Citation Envoyé par Theze Voir le message
    Bonjour,

    Une piste à mettre dans un module standard (depuis Excel, maintenir la touche Alt puis appui sur touche F11 (tu entres dans le VBE), sur la lettre I et enfin sur la lettre M et coller le code dans la zone de texte qui vient d'apparaître à droite) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    Sub Recopier()
     
        With Worksheets("Imputation")
            .Rows(33).Copy .Rows(.Cells(.Rows.Count, 1).End(xlUp).Row + 1)
        End With
     
    End Sub
    Ensuite, revenir sur Excel, clic droit sur la barre d'outils Accès rapide puis sur le bouton "Personnaliser la barre d'outils Accès rapide" dans la liste de choix "Choisir les commandes..." cliquer sur "Macros" et dans la liste dessous cliquer sur "Recopier" (surligner le nom de la macro ci-dessus), dans la liste de droite, tu cliques sur le bouton après lequel tu veux avoir le bouton de commande de la macro, clic sur le bouton "Ajouter" et enfin, sur le bouton "OK".
    A chaque clic sur ce bouton qui commande la macro, la ligne 33 sera copiée sur la première ligne vide en bas de ton tableau
    Merci Theze pour ton aide pas à pas lol
    Ça fonctionne bien.
    Dommage que je ne puisse pas masquer ma ligne type (33) et avoir un bouton. Mais c'est déjà top
    Merci

  9. #9
    Candidat au Club
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Mars 2019
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2019
    Messages : 4
    Points : 2
    Points
    2
    Par défaut
    Bonjour Theze,
    J'ai un petit souci, en copiant mon fichier sur un répertoire Sharepoint, lorsque je clique sur le bouton pour recopier, j'ai un message "Désolé...Excel ne peut pas ouvrir en même temps deux classeurs portant le même nom". J'ai l'impression que cette commande fait appel à mon fichier en local.
    En modifiant le nom du fichier copié sur SharePoint, en cliquant sur le bouton, il va ouvrir mon fichier en local pour ajouter une ligne dans celui de SharePoint.

    Peux-tu me dire comment modifier cela pour que le fichier sur SharePoint soit autonome ???

    Par avance, merci beaucoup.
    Charles

  10. #10
    Modérateur

    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    15 331
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 15 331
    Points : 23 786
    Points
    23 786
    Par défaut
    Citation Envoyé par Menhir Voir le message
    Perso, je ne prendrais pas la peine de faire un UserForm pour si peu.
    J'associerais la macro à une simple forme dans la feuille de calcul ou (mieux) je créerais une icone dans la barre d'outils à accès rapide.
    Bonjour.

    Je ne parlais pas de UserForm mais de feuille du classeur.
    On peut associer un module à une feuille.
    C'est là que je mets mon code quand j'ai une "interface" avec un bouton par exemple sur une feuille en particulier.

    A+
    Vous voulez une réponse rapide et efficace à vos questions téchniques ?
    Ne les posez pas en message privé mais dans le forum, vous bénéficiez ainsi de la compétence et de la disponibilité de tous les contributeurs.
    Et aussi regardez dans la FAQ Access et les Tutoriaux Access. C'est plein de bonnes choses.

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 27/02/2018, 08h37
  2. Bouton pour copier/coller lignes avec cases à cocher
    Par Bertrandd dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 29/08/2014, 18h16
  3. [AC-2007] Bouton pour supprimer une ligne du détail du formulaire
    Par FewRa dans le forum IHM
    Réponses: 17
    Dernier message: 27/11/2012, 14h02
  4. [XL-2007] Bouton pour copier des cellules d'une feuille à une autre
    Par Samizarrad dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 06/03/2010, 16h27
  5. [MySQL] ajouté une case pour effacé une ligne
    Par cobra91 dans le forum PHP & Base de données
    Réponses: 9
    Dernier message: 31/05/2007, 09h00

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