Macro

Claire -  
f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,
Débutante dans les macros, je chercher à copier la dernière ligne non-vide et ses 40 précédentes lignes d'une feuille excel à une autre. donc dans le même fichier.
Merci d'avance!
Claire

3 réponses

  1. f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention   1 717
     
    Bonjour,

    Une facon de faire:

    Sub copie()
        With Worksheets("feuil1")       'adaptez le nom de la feuille
            derlig = .Range("A" & Rows.Count).End(xlUp).Row     'derniere cellule non vide colonne A
            'copie valeurs
            'adaptez le nom de la feuille, derniere ligne-40: 41, colonne Z: 26 adptez la derniere colonne
            Worksheets("feuil2").Range("A1").Resize(41, 26) = .Range("A" & derlig - 41 & ":Z" & derlig).Value
        End With
    End Sub
    0
    1. Claire
       
      Merci infiniment pour votre aide, j'ai réussi suivant les critères donnés.
      Maintenant, j'aimerais savoir s'il est possible de sélectionner seulement les cellules entre la dernière non-vide et une cellule nommée "Recapitulatif" qui peut changer de ligne?
      Merci d'avance!
      Claire
      0
    2. f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention   1 717 > Claire
       
      Re,

      Sub copie()
          With Worksheets("feuil1")       'adaptez le nom de la feuille
              Adr = .Range("Recapitulatif").Row   'ligne de depart
              derlig = .Range("A" & Rows.Count).End(xlUp).Row     'derniere cellule non vide colonne A
              'copie valeurs
              'adaptez le nom de la feuille,  colonne Z: 26 adaptez la derniere colonne
              Worksheets("feuil2").Range("A1").Resize(Adr, 26) = .Range("A" & Adr & ":Z" & derlig).Value
          End With
      End Sub
      0
    3. Claire
       
      Il a pas l'air très d'accord avec le
      Adr = .Range("Recapitulatif").Row !!!
      0
    4. f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention   1 717 > Claire
       
      Re,

      Si vous avez nomme une cellule Recapitulatif, ca doit marcher. Verifiez le nom
      0
    5. Claire > f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention  
       
      Je vois pas l'erreur!! Je nage complétement là!


      Sub Recap()
      With Worksheets("358.1")
      Adr = .Range("Recapitulatif").Row
      derlig = .Range("A" & Rows.Count).End(x1Up).Row
      Worksheets("Comparatif").Range("A1").Resize(Adr, 8) = .Range("A" & Adr & ":C" & derlig).Value
      End With
      End Sub
      0
  2. Claire
     
    Cellule A191 de la feuille "358.1"

    Sachant que ce mot "Recapitulatif1" pour changer de ligne.
    0
    1. f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention   1 717
       
      Re,

      Ben oui, c'est un texte dans une cellule, pas un nom de cellule

      Vous voulez que le texte ou le format avec
      0
  3. Claire
     
    Dsl pour le mal entendu.

    Le format avec si possible svp!
    Merci ;-)
    0
    1. f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention   1 717
       
      Re,

      code puisque vous ne pouvez pas ouvrir un fichier exterieur

      Sub Recap()
          With Worksheets("358.1")
              Adr = .Columns(1).Find("Recapitulatif1", .Cells(1, 1), , xlWhole).Row
              derlig = .Range("A" & Rows.Count).End(xlUp).Row
              .Range("A" & Adr & ":H" & derlig).Copy Worksheets("Comparatif").Range("A1").Resize(derlig + 1 - Adr, 8)
          End With
      End Sub
      0
    2. Claire
       
      Merci infiniment pour votre aide, malheureusement j'ai une séance alors je dois reprendre cela demain.
      Bonne soirée à vous!
      0
    3. f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention   1 717 > Claire
       
      A demain
      0
    4. Claire > f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention  
       
      Hello!
      Super ça fonctionne très bien! Merci
      Maintenant j'aimerais ajouter a la suite de cette macro dans "comparatif" un autre récapitulatif.
      En fait j'ai un autre onglet "358.2" avec une récap a la fin et j'aimerais qu'elle se copie en dessous de la recap de l'onglet "358.1" dans "Comparatif".
      Je sais pas si c'est très clair!!??
      Sachant que le nombre de lignes peuvent varier.
      0
    5. f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention   1 717 > Claire
       
      Bonjour,
      Mettez votre fichier à disposition pour avoir la feuille supplémentaire
      0