Macro: copier colonne jusqu'à dernière cellule non vide

Dylan68700 Messages postés 19 Statut Membre -  
Dylan68700 Messages postés 19 Statut Membre -
Bonjour,

j'ai mis en place une macro qui, a un moment, est censée me copier toute une colonne jusqu'à la dernière cellule non vide pour me la coller dans une autre feuille.
J'avais trouvé un code par défaut que j'ai bêtement copié sans le comprendre, et ça fonctionne.

Malheureusement, voulant le faire pour un autre classeur, ça ne fonctionne pas et le message d'erreur est le suivant: "Erreur de compilation: Variable non définie".

Voici le code (l'erreur se trouve dans la partie en gras, le reste est juste là pour situer le contexte):

Sheets("CONTRATS 2014").Activate
ActiveSheet.Range("$A$1:$AJ$1").AutoFilter Field:=16, Criteria1:="210,00 €"

D_L_C = Range("A" & Rows.Count).End(xlUp).Row
Range("A1:A" & D_L_C).Copy (Sheets("LISTE 2014 pour COMPTA").Range("A10"))


Est-ce que quelqu'un qui comprend pourrait m'expliquer le problème svp ?
Qu'est-ce que le D_L_C par exemple ? Le problème est à ce niveau là.

Merci par avance,

3 réponses

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

    il ne peut y avoir qu'une ligne en erreur, pas les deux a la fois. Alors, laquelle est-ce ???
    0
  2. Dylan68700 Messages postés 19 Statut Membre
     
    C'est la première, le débogeur me surligne "D_L_C"
    0
  3. f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention   1 717
     
    Re,

    si Option explicit a ete ecrit en haut de la page de code, c'est que cette variable n'a pas ete declaree ex: dim D_L_C as Integer
    0
    1. Dylan68700 Messages postés 19 Statut Membre
       
      Oui exact, Merci !
      Je n'avais même pas précisé et tu as trouvé, génie :)

      Par contre, j'ai maintenant un pb avec la ligne d'en-dessous:

      Je précise bien
      Sheets("CONTRATS 2014").Activate

      puis vient ce fameux D_L_C
      D_L_C = Range("A" & Rows.Count).End(xlUp).Row

      Et enfin:
      Range("A1:A" & D_L_C).Copy (Sheets("DPI 2014").Range("A12"))

      Sauf qu'au lieu de me coller la colonne A de "CONTRATS 2014" dans la celulle A12 de "DPI 2014", ça me colle la colonne A de "DPI 2014" dans la celulle A12 de "DPI 2014" ...

      Any idea ?

      Est-ce le "Option Explicit" qui fait changer les choses ?!
      0
    2. f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention   1 717
       
      Re,
      lequel ????? Parce que le nom de l'onglet a change etre temps !!!!!!!
      0
    3. Dylan68700 Messages postés 19 Statut Membre
       
      Ah oui mince, "LISTE COMPTA 2014" est devenu "DPI 2014"
      0