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 :

Couper une ligne d'un onglet pour la coller à la suite d'un tableau d'un autre onglet


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre à l'essai
    Femme Profil pro
    Étudiant
    Inscrit en
    Mars 2018
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Hautes Pyrénées (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2018
    Messages : 6
    Par défaut Couper une ligne d'un onglet pour la coller à la suite d'un tableau d'un autre onglet
    Bonjour, je suis nouvelle sur ce forum, j'ai lu d'autres post qui abordent ce point mais je n'arrive pas à adapter leurs codes à mes besoins.

    Je suis actuellement en stage et je dois optimiser un fichier Excel : dans l'onglet "Signataires" il y a la colonne G "certifié" qui est soit "oui" en vert ou "non" en rouge et je voudrais qu'une fois "non" coché, cette ligne se coupe pour se coller dans l'onglet "Archives signataires" à la suite des autres lignes.

    Merci d'avance pour votre aide

  2. #2
    Expert confirmé Avatar de hyperion13
    Homme Profil pro
    Webplanneur
    Inscrit en
    Octobre 2007
    Messages
    4 288
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : Réunion

    Informations professionnelles :
    Activité : Webplanneur

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 288
    Par défaut
    Citation Envoyé par charlie8407 Voir le message
    ...je voudrais qu'une fois "non" coché ...
    Salut, qu'entendez-vous par "coché" ? la valeur NON sélectionnez dans G:G ? Ou cochez-vous une case en H ?

    Copiez dans un module de votre classeur la routine :
    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
    Sub Archiver()
        Dim LastCellG As Long
        Dim LastCellA As Long
        Dim i As Long
        LastCellG = Sheets("Stagiaires").Range("G65535").End(xlUp).Row + 1
        For i = LastCellG To 2 Step -1
            With Sheets("Stagiaires")
                If .Cells(i, 7).Text = "NON" Then
                    .Cells(i, 7).EntireRow.Copy _
                        Destination:=Sheets("Archives signataires").Range("A65535").End(xlUp).Offset(1, 0)
                    .Cells(i, 7).EntireRow.Delete
     
                End If
            End With
        Next i
        LastCellA = Sheets("Archives signataires").Range("A65535").End(xlUp).Row
        Sheets("Archives signataires").Range("A1:G" & LastCellA).Sort _
            Key1:=Range("A2"), Order1:=xlAscending, Key2:=Range( _
            "B2"), Order2:=xlAscending, Header:=xlGuess, MatchCase _
            :=False, Orientation:=xlTopToBottom
    End Sub
    Ligne1 de Stagiaires identique dans Archives stagiaires !
    Ajouter un Btn de commande associé à la routine Archiver pour exécuter l'archivage
    Images attachées Images attachées  

  3. #3
    Membre à l'essai
    Femme Profil pro
    Étudiant
    Inscrit en
    Mars 2018
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Hautes Pyrénées (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2018
    Messages : 6
    Par défaut
    Dans la colonne on note soit oui soit non (pas de case de coché) et une fois ce choix effectué, il faudrait que la ligne se coupe et se colle à la suite des autres lignes déjà présentes dans l'onglet "Archives signataires"

  4. #4
    Membre à l'essai
    Femme Profil pro
    Étudiant
    Inscrit en
    Mars 2018
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Hautes Pyrénées (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2018
    Messages : 6
    Par défaut
    Merci beaucoup pour votre travail.

    Oui la ligne 1 des 2 onglets est bien identique par contre j'ai recopié votre code mais sans succès, ça ne fonctionne, je ne comprends pas car vous avez bien saisi la demande quand je regarde votre capture écran

    J'ai un message d'erreur lors de l’exécution du code : Erreur d'exécution : '1004' Erreur définie par l'application ou par l'objet

  5. #5
    Membre à l'essai
    Femme Profil pro
    Étudiant
    Inscrit en
    Mars 2018
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Hautes Pyrénées (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2018
    Messages : 6
    Par défaut
    Malgré le message d'erreur ça fonctionne, j'ai bien eu le renvoi des lignes "non" dans l'autre onglet mais c'est juste que lorsque j'entre de nouvelles lignes et que j'exécute le code : il y a le message d'erreur tout en réalisant correctement la tâche demandé... Mais ça fonctionne et c'est déjà une grande aide pour moi, merci beaucoup

  6. #6
    Membre à l'essai
    Femme Profil pro
    Étudiant
    Inscrit en
    Mars 2018
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Hautes Pyrénées (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2018
    Messages : 6
    Par défaut
    Quand j'exécute le code, j'ai le message suivant :

    Erreur d'exécution '1004'
    Référence de tri non valide. Vérifier qu'elle se trouve bien parmi les données à trier et que la zone Trier par n'est pas identique ou vide.

    Et quand je clique sur débogage, ça surligne le passage suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
        Sheets("Archives signataires").Range("A1:G" & LastCellA).Sort _
            Key1:=Range("A2"), Order1:=xlAscending, Key2:=Range( _
            "B2"), Order2:=xlAscending, Header:=xlGuess, MatchCase _
            :=False, Orientation:=xlTopToBottom
    Petit détail : dans mon fichier la colonne G avec la condition à partir de laquelle s'effectue le tri n'est pas la dernière colonne du tableau, le tableau va de A à M. Comme dans votre exemple la colonne G est la dernière colonne, je ne sais pas si cette info peut aider pour supprimer ce message...

    Hormis ce message d'erreur après l'exécution, tout se réalise bien, les lignes avec "non" dans la colonne G sont bien coupées du premier onglet pour se coller les unes à la suite à des autres dans le second onglet mais le message d'erreur s'affiche malgré tout !!!

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 10/12/2010, 23h41
  2. Réponses: 6
    Dernier message: 23/04/2009, 16h07
  3. Réponses: 3
    Dernier message: 23/04/2009, 12h44
  4. Verifier qu une ligne existe ou pas pour insertion
    Par ZashOne dans le forum Accès aux données
    Réponses: 8
    Dernier message: 25/02/2009, 00h55
  5. couper une ligne apres un caractere defini
    Par jimy2b66 dans le forum Linux
    Réponses: 4
    Dernier message: 05/12/2007, 09h40

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