Création marco pour déplacer ligne excel dans un autre fichier
Résolu
piperboxer
Messages postés
3
Date d'inscription
Statut
Membre
Dernière intervention
-
piperboxer Messages postés 3 Date d'inscription Statut Membre Dernière intervention -
piperboxer Messages postés 3 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Tout d'abord je suis nouvelle sur le forum et vraiment novice en marcro excel, voilà pourquoi j'arrive sur ce forum en espèrant que quelq'un pourra m'aider.
Je voudrais en fait créer une macro qui permettrait de déplacer une ligne complète excel dans un autre fichier et ce, si par exemple, je tape "4" dans une cellule de la ligne qui doit être déplacée.
Help! Merci!!!!!
Tout d'abord je suis nouvelle sur le forum et vraiment novice en marcro excel, voilà pourquoi j'arrive sur ce forum en espèrant que quelq'un pourra m'aider.
Je voudrais en fait créer une macro qui permettrait de déplacer une ligne complète excel dans un autre fichier et ce, si par exemple, je tape "4" dans une cellule de la ligne qui doit être déplacée.
Help! Merci!!!!!
A voir également:
- Déplacer ligne excel sous condition
- Déplacer colonne excel - Guide
- Excel cellule couleur si condition texte - Guide
- Aller à la ligne excel - Guide
- Liste déroulante excel - Guide
- Partager photos en ligne - Guide
3 réponses
Bonjour,
Une cellule.. n'importe laquelle ou bien d'une colonne en particulier ?
En utilisant l'enregistreur de macro.. cela te donnera le début du code à utiliser pour réaliser ton "programme".
Si tu veux que l'action se lance lorsque tu saisis quelque chose dans une cellule.. il faut utiliser la méthode worksheet_change de ta feuille excel.
par exemple :
Bien sûr ce n'est qu'un exemple... c'est à adapter à tes besoins....
si par exemple, je tape "4" dans une cellule de la ligne qui doit être déplacée.
Une cellule.. n'importe laquelle ou bien d'une colonne en particulier ?
Je voudrais en fait créer une macro qui permettrait de déplacer une ligne complète excel dans un autre fichier
En utilisant l'enregistreur de macro.. cela te donnera le début du code à utiliser pour réaliser ton "programme".
déplacer une ligne complète excel dans un autre fichier et ce, si par exemple, je tape "4" dans une cellule de la ligne qui doit être déplacée.
Si tu veux que l'action se lance lorsque tu saisis quelque chose dans une cellule.. il faut utiliser la méthode worksheet_change de ta feuille excel.
par exemple :
Private Sub Worksheet_Change(ByVal Target As Range) '---------------------------------------- 'Target est un objet 'de type range qui 'correspond à la cellule modifiée '---------------------------------------- 'si tu veux lancer la macro... que si ' le chiffre 4 est saisi dans la colonne B If Target.Column = 2 Then If Target.Value = 4 Then Call deplacerLigne(Target.Row) End If End If End Sub Sub deplacerLigne(ligne As Integer) ActiveSheet.Rows(ligne).Select Selection.Cut Windows("Classeur2").Activate ActiveSheet.Paste End Sub
Bien sûr ce n'est qu'un exemple... c'est à adapter à tes besoins....
Merci pour ta réponse.
Il s'agit plusieurs lignes par client dont j'indiquerai un "4" dans la colonne "statut".
Et je voudrais que les lignes concernées aillent dans une autre sheet.
Désolée mais trop débutante pour savoir ce que c'est le worsheet_change....
Il s'agit plusieurs lignes par client dont j'indiquerai un "4" dans la colonne "statut".
Et je voudrais que les lignes concernées aillent dans une autre sheet.
Désolée mais trop débutante pour savoir ce que c'est le worsheet_change....
...
Mais heureusement ... internet est là non ?
Par exemple : https://silkyroad.developpez.com/VBA/EvenementsFeuille/#LII-E
Ou encore : https://docs.microsoft.com/fr-fr/office/vba/api/excel.worksheet.change?redirectedfrom=MSDN
Tu connais le NUMERO de cette colonne ? .. si oui... il suffit de remplacer mon "2" par ce numéro dans le code que je t'ai donné.
Le code que je t'ai donné (en me basant sur l'énoncé de ta question .. au début de cette conversation).. fait que ça déplace la ligne dans la feuille "active" d'un classeur (ouvert) nommé : "classeur2"
Bien sûr.. pour faire totalement et correctement les choses.. avant de "déplacer" il faudrait déterminer l'emplacement de la première ligne vide disponible pour y mettre TA ligne.. sinon ça va écraser la ligne précédente...
Donc au final tu veux quoi ???
Qu'on fasse la macro entièrement pour toi ?
Si c'est ça... il faut le dire ... car moi en lisant ta question je suppose que tu veux apprendre.. que tu veux essayer de le coder toi même ... pas que tu désires faire appel à des sous-traitants (..gratuitement..) ....
Mais n'aie pas peur de le demander franco.. des membres de ce forum pourront le faire sans souci... il suffit juste d'être clair dans l'énoncé de sa "question".
Désolée mais trop débutante pour savoir ce que c'est le worsheet_change....
Mais heureusement ... internet est là non ?
Par exemple : https://silkyroad.developpez.com/VBA/EvenementsFeuille/#LII-E
Ou encore : https://docs.microsoft.com/fr-fr/office/vba/api/excel.worksheet.change?redirectedfrom=MSDN
Il s'agit plusieurs lignes par client dont j'indiquerai un "4" dans la colonne "statut".
Tu connais le NUMERO de cette colonne ? .. si oui... il suffit de remplacer mon "2" par ce numéro dans le code que je t'ai donné.
je voudrais que les lignes concernées aillent dans une autre sheet.
Le code que je t'ai donné (en me basant sur l'énoncé de ta question .. au début de cette conversation).. fait que ça déplace la ligne dans la feuille "active" d'un classeur (ouvert) nommé : "classeur2"
Bien sûr.. pour faire totalement et correctement les choses.. avant de "déplacer" il faudrait déterminer l'emplacement de la première ligne vide disponible pour y mettre TA ligne.. sinon ça va écraser la ligne précédente...
Désolée mais trop débutante
Donc au final tu veux quoi ???
Qu'on fasse la macro entièrement pour toi ?
Si c'est ça... il faut le dire ... car moi en lisant ta question je suppose que tu veux apprendre.. que tu veux essayer de le coder toi même ... pas que tu désires faire appel à des sous-traitants (..gratuitement..) ....
Mais n'aie pas peur de le demander franco.. des membres de ce forum pourront le faire sans souci... il suffit juste d'être clair dans l'énoncé de sa "question".