IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

problème de copie d'un classeur vers un autre [XL-2007]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Inscrit en
    Juin 2011
    Messages
    51
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juin 2011
    Messages : 51
    Par défaut problème de copie d'un classeur vers un autre
    bonjour a tous

    voilà j ai un petit problème de copie. je désire copier la valeur du range("G"&i) du classeur ClasPre (feuille Feuil1) vers ClasDeu dans l feuille Feuil1 et dans la cellule A de l avant sixième ligne de la dernier ligne utilisée du classur ClasDeu

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    set C3=workbooks("ClasDeu.xlsx")
    range("G"&i).copy C3.worksheets("Feuil1").range("A" & cells(rows.count, 1).end(xlup).row -5)
    mais ca me renvoie une erreur . en fait quand je remplace le "cells(rows.count, 1).end(xlup).row -5)" par le numéro de la ligne ça marche ... quoique j ai une autre procédure qui quand elle s'execute elle me crée des lignes donc le numéro de l'avant sixième ligne change


    merci d' avance

  2. #2
    Expert confirmé
    Avatar de MarcelG
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2009
    Messages
    3 449
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2009
    Messages : 3 449
    Billets dans le blog
    7
    Par défaut COPIE
    Bonsoir à toi, Bonsoir le Forum

    Ta concaténation n'est pas correcte. En effet, tu associes un nom de colonne "A" avec une adresse de cellule

    Essaie plutôt

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Set C3 = Workbooks("ClasDeu.xlsx")
    Range("G" & i).Copy C3.Worksheets("Feuil1").Range("A" & Rows.Count).End(xlUp).Offset(-5, 0)

  3. #3
    Membre averti
    Homme Profil pro
    Inscrit en
    Juin 2011
    Messages
    51
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juin 2011
    Messages : 51
    Par défaut
    merci pour ton aide mais ça ne marche toujours pas j'ai toujours le même message d'erreur (pour les deux bout de code)

    Erreur d'exécution '1004':
    Erreur définie par l'application ou par l'objet

  4. #4
    Expert éminent Avatar de mercatog
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9 435
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9 435
    Par défaut
    Bonjour
    Comme tu n'as pas mis le code en entier, essaies de travailler avec des variable.
    Tu veux copier la cellule Gi (i a quelle valeur?) vers la 5ème cellule en partant du bas de tes donnés de Feuil1 de ton classeur C3

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    With C3.Worksheets("Feuil1")
        LastLig = .Cells(.Rows.Count,1).End(xlUp).Row
        If LastLig > 5 Then ThisWorkbook.Sheets("NomFeuilleSource").Range("G" & i).Copy .Range("A" & LastLig - 5)
    End With

  5. #5
    Membre averti
    Homme Profil pro
    Inscrit en
    Juin 2011
    Messages
    51
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juin 2011
    Messages : 51
    Par défaut
    mon code ressemble un peu à ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
     
    Sub copier()
    Dim C1 As Workbook, C3 As Workbook
     
    Set C1 = Workbooks("ClasPre.xlsm")
    Set C3 = Workbooks("ClasDeu.xlsx")
    With C1
    With Sheets("Feuil1")
    For i = 1 To 65536
    if Range("D" & i).Value = "vente" Then
    range("D"&i).copy C3.worksheets("Feuil1").range("A" & cells(rows.count, 1).end(xlup).row -5)
    End If
    Next i
    End With
    End With
    End Sub

  6. #6
    Expert éminent Avatar de mercatog
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9 435
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9 435
    Par défaut
    Tu consens ce que tu essaies de faire?
    Tu tu écries vente dans la 5ème cellule en remontant du bas de ton tableau
    (En parcourant 65536 cellules)

  7. #7
    Membre averti
    Homme Profil pro
    Inscrit en
    Juin 2011
    Messages
    51
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juin 2011
    Messages : 51
    Par défaut
    en fait j ai une procédure dans le deuxième classeur qui me crée des tableaux de tailles fixes (à chaque exécution elle crée un tableau et à la 5ème cellule en remontant du bas du tableau créé je dois coller la valeur de la cellule du "G"&i (je dois parcourir toutes les cellules de la colonne G du premier classeur et j'ai 3 cas si la valeur est "vente" je copie dans la cellule A en remontant du bas, si "Achat" je copie dans B et si "en reduc" en E .)
    les deux procédures s'exécutent l'une après l'autre

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [XL-2000] Erreur lors de la copie d'une feuille vers un autre classeur qui vient d'être créé
    Par Hankow dans le forum Macros et VBA Excel
    Réponses: 10
    Dernier message: 07/04/2015, 09h10
  2. [XL-2007] Copie données d'un classeur vers un autre classeur
    Par carlux3 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 23/12/2010, 14h14
  3. copie classeur vers un autre
    Par dianbobo dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 02/07/2010, 00h09
  4. Copie d'une feuille vers un autre classeur
    Par zeralium dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 23/10/2008, 16h08
  5. [VBA] Copie d'une plage vers un autre classeur
    Par Pachee dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 05/08/2008, 15h14

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo