Erreur macro copier/coller

Résolu
Bonjour,

J'ai un soucis sur une macro que je n'arrive à résoudre.

je fais un copier/coller qui ne fonctionne pas.

j'ai tenté plusieurs méthodes sans réussir à éviter une erreur.

qu'est ce que je fais qui n'est pas correcte?




Configuration: Windows / Chrome 87.0.4280.141

5 réponses

  1. Bonjour,

    Essaie en mettant
    Set C=Range("B76:O128")
    au lieu de
    Selection Copy
    et au lieu de la ligne en erreur, mets :
    C.Copy
    Range("B76").Paste
    


    Daniel
    0
    1. Merci,

      mais j'ai toujours le même soucis.

      la copie est à prendre en "B3:055" d'une feuille pouvant être variable et à coller en "B73" d'une autre feuille fixe "Impression".
      0
  2. Il y a alors quelque chose qui bloque. Est-ce que tu peux poster le classeur sans données confidentielles ?

    Daniel
    0
    1. Contributeur
      Bonjour,

      il est préférable de poster le code en suivant les indications du lien au lieu d'images:

      https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code

      voir ceci pour faire un copier coller d'une plage de cellule:

      https://docs.microsoft.com/fr-fr/office/vba/api/excel.range.copy
      1
      1. j'ai utilisé un code de ton lien

        ActiveSheet.Range("B3:O55").Copy _
            Destination:=Worksheets("Impression").Range("B76")


        et cela fonctionne.

        Sauriez-vous cependant me dire pourquoi?
        0
      2. Contributeur
        @Maksime568Le bouton se trouve sur la feuille active donc on emploi:

        ActiveSheet


        ensuite si tu veux coller a la suite il faut déterminer la 1ère ligne vide pour remplacer par une variable:

        Range("B76")


        voici le site pour trouver la dernière ligne rempli a laquelle tu ajouteras +1

        https://excel-malin.com/tutoriels/vba-tutoriels/vba-trouver-la-derniere-cellule-utilisee/

        voilà tu as les cartes en main pour faire ta macro

        Bon courage

        @+ Le Pivert
        0
      3. @cs_Le PivertJe faisais en sorte d'être certain d'avoir les cellules de destination vide en faisant un .delete de la zone pourtant.
        0
    2. Bonjour,

      Au lieu de
      Range("B76").Paste

      mets :
      c.Copy Range("B76")


      Daniel
      0