Peut-on faire en 1 macro ce que j'ai en 3 ?

Usine à gaz

XLDnaute Barbatruc
Supporter XLD
Bonjour à toutes et à tous,

Voilà longtemps … LOL

Me voici avec un « petit souci » que je n’arrive pas à résoudre et j’ai besoin de votre aide, si vous le voulez bien.

Dans le classeur ci-joint(feuilles protegées sans MdP), j’ai besoin :
- De copier de la feuille « Repondeurs », en appuyant sur un bouton, des cellules dans une autre feuille.
- De supprimer la ligne copiée,

Le principe de fonctionnement est le suivant :
- Je sélectionne « OUI » dans une cellule de ma feuille « Repondeurs » en colonne W
- Je clique sur le bouton GO correspondant à la feuille destinatrice,
- La macro sélectionne les cellules à copier de la ligne sur laquelle j’ai mis OUI dans la cellule en W,
- La macro me créé une ligne et fait la copie dans la feuille destinatrice des cellules sélectionnées dans "Répondeurs",
- Enfin, la macro revient sur « Répondeurs », supprime la ligne concernée et me repositionne dans la feuille destinatrice,

Ça fonctionne bien mais, Mon « petit souci »:
Pour y arriver, j’ai du faire 3 macros :
- TransfertRepondeursDuMatin,
- TransfertRepondeursDuSoir,
- TransfertRepondeursDuRdV,

Est-il possible de faire cela en une seule macro ?

Avec mes remerciements pour votre aide toujours si précieuse,
Je vous souhaite à toutes et à tous un très beau dimanche.
Amicalement,
Lionel,
 

Pièces jointes

  • Copie vers autre feuille.xlsm
    65.7 KB · Affichages: 34
  • Copie vers autre feuille.xlsm
    65.7 KB · Affichages: 47
Dernière édition:

Usine à gaz

XLDnaute Barbatruc
Supporter XLD
Re : Peut-on faire en 1 macro ce que j'ai en 3 ?

Bonsoir Lone-wolf,

Merci d'être là et de ta gentillesse.
Je suis sans doute encore nul et surtout fatigué LOL.

Mais en cherchant, ma question a évolué dans le bon sens.
Je me suis aperçu que je dois garder mes trois macros car les infos à copier dans les feuilles ne sont pas tout à fait les mêmes.

Mon souci maintenant est devenu différent.
Je voudrais remplacer les boutons par une action automatique quand j'ai mis OUI dans une cellule.

Je reviens dès que je suis capable de bien formuler ma question LOL

Vraiment vous êtes tous supers :rolleyes:
Bonne fin de dimanche Lone,
Amicalement,
Lionel,
 

Usine à gaz

XLDnaute Barbatruc
Supporter XLD
Re : Peut-on faire en 1 macro ce que j'ai en 3 ?

Re Lone,

Effectivement, au départ, je voulais simplement simplifier et gagner en taille car mes codes sont "horribles" et pour arriver à un résultat, je passe par toutes les villes du monde LOL.

Mais comme je te l'ai plus bas, je suis maintenant obligé de garder mes 3 macros et elles fonctionnent.

Je suis désolé de t'avoir fait passer du temps mais je vais étudier ton code et, comme tous vos codes, ils me font avancer mes petites connaissances et c'est vraiment bien.

Amicalement,
Lionel,
 

Lone-wolf

XLDnaute Barbatruc
Re : Peut-on faire en 1 macro ce que j'ai en 3 ?

Re Lionel

Si tu veux que la copie se fasse quand tu met OUI, dans ce cas il faut que tu mette le code dans Worsheet_Change. Copie ton classeur sur le bureau en le renommant et test avec ceci. Code à mettre dans la feuille Repondeurs.

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
Application.EnableEvents = False
On Error Resume Next
Application.DisplayAlerts = False

If Not Intersect(Target, Range("w7:w12")) Is Nothing Then
If Target.Value = "OUI" Then _
Sheets("DuMatin").Range("E7:P7").Copy Cells(Rows.Count, 5).End(xlUp)(2)
End If

If Not Intersect(Target, Range("x7:x12")) Is Nothing Then
If Target.Value = "OUI" Then _
Sheets("DuSoir").Range("E7:P7").Copy Cells(Rows.Count, 5).End(xlUp)(2)
End If

If Not Intersect(Target, Range("y7:y12")) Is Nothing Then
If Target.Value = "OUI" Then _
Sheets("Rdv").Range("E7:P7").Copy Cells(Rows.Count, 5).End(xlUp)(2)
End If
Application.EnableEvents = True
End Sub
 
Dernière édition:

Statistiques des forums

Discussions
312 360
Messages
2 087 598
Membres
103 604
dernier inscrit
CAROETALEX59