Macro Couper coller avec condition

Bonjour,

J'ai un fichier que je voudrais automatiser. J'ai une macro qui dit quand je fais Ctrl+F, mettre dans la colonne G "Fait".
Par contre, j'aimerais que mes lignes de projet, dès qu'elles passent en statut "fait", soient coupés et collés dans un autre onglet.

1) Est ce possible?
2) Comment faire?

PS : je suis débutant :-)

3 réponses

  • Votes
  • Date
  • Date décroissante
  1. Modérateur
    Bonjour,
    Dans un premier temps, dans ton classeur Excel, tape ALT+F11 et cherche dans le(s) module(s) ton code de macro. Tu verras, il commence par : Sub NomDeTaMacro().
    Reviens coller tout ton code ici.
    Ensuite, pour couper/coller dans un autre onglet, il nous faudra le nom des feuilles sources et destinations.
    1. Merci pour ce début de réponse.

      L'onglet source est "Projets" et l'onglet destinataire et "Projets réalisés".
      1. Modérateur
        Oui. Ok. Mais ton code, il est ou?
      2. Sub Fait()
        '
        '
        ' Touche de raccourci du clavier: Ctrl+Maj+F
        '
        colonne = 7
        ligne = ActiveCell.Row
        Cells(ligne, colonne) = "Fait"
        Cells(ligne, colonne + 34) = Now()

        End Sub
    2. Modérateur
      Donc, à la place du code que tu nous as donné, mets celui-ci :

      Sub Fait() 
      ' 
      ' 
      ' Touche de raccourci du clavier: Ctrl+Maj+F 
      ' 
      Dim ligne As Integer, colonne As Integer
      colonne = 7 
      ligne = ActiveCell.Row 
      Cells(ligne, colonne) = "Fait" 
      Cells(ligne, colonne + 34) = Now() 
      Rows(ligne).EntireRow.Cut Sheets("Projets réalisés").Range("A65536").End(xlUp).Offset(1, 0)
      'Rows(ligne).EntireRow.Delete
      End Sub


      1- Vérifie d'abord, dans ce code, le nom de la feuille destination (accents, majuscules)
      2- Si tu veux que la ligne coupée soit supprimée, enlève l'apostrophe au début de la dernière ligne de code ('Rows(ligne).EntireRow.Delete)
      A tester d'abord dans une copie de ton fichier....... Pour éviter toute surprise.
      Rappel : une erreur faite par macro ne peux pas être annulée par "Annuler"...