Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Copier-Coller une plage de donnée d'une feuille a une autre

  • Initiateur de la discussion Initiateur de la discussion ManL
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

ManL

XLDnaute Nouveau
Bonjour,

Je suis débutante en VBA et je n'arrive pas a trouver la réponse a mon problème dans le forum.
Je m'explique: j'ai un fichier avec la liste des ventes de differents produits (réference dans colonne C) de 1996 a 2012 (colonnes G a W) .
Ces produits sont classés selon deux criteres et j'aimerais pouvoir copier-coller une plage de chaque ligne (De G a Y par exemple) de la liste des ventes jusqu'a une autre feuille , sur une plage précise déterminer selon les critères, pour pouvoir effectuer un calcul (la démarche est déjà faite).
Enfin j'aimerais afficher le résultat sur une autre feuille dans un tableau, sur la ligne de la dimension correspondante.

Je sais que c'est un peu tordu... mais pouvez-vous m'aider? Merci
beaucoup!
 
Re : Copier-Coller une plage de donnée d'une feuille a une autre

Bonjour,
Je sais que c'est un peu tordu...
Non ça ne m'en a pas l'air.
mais pouvez-vous m'aider?
Normalement nous devrions pouvoir.
Cependant là, votre question manque cruellement de détails...
pouvoir copier-coller une plage de chaque ligne (De G a Y par exemple) de la liste des ventes
Qui corresponds à quoi???

jusqu'a une autre feuille ,
Laquelle???

sur une plage précise déterminer selon les critères
Quels critères???

Pour faire simple, il nous faudrait un fichier exemple comme recommandé par la charte de ce forum.
 
Re : Copier-Coller une plage de donnée d'une feuille a une autre

Merci pour la réponse rapide 🙂

Je vais essayer d´être plus claire: En fait j'aimerais copier-coller chacune leur tour chaque ligne de G:Y depuis le début de ma liste de produit jusqu'à la fin d'une feuille nommée "ventes" jusqu'à une la plage C4-Y4 d'une autre feuille nommée "worksheet".
Ici les valeures déposées vont être pris en compte dans un calcul dont la réponse va s'affichée en bas de la feuille (G300:Y300).
Et enfin il faudrait copier-coller chaque ligne de résultats sur une feuille nommée "result", dans la ligne correspondant a la référence du produit.
Pour les criteres j'ai par exemple les lieux de vente (en gros trois différents) , et la plage de destination sera différente si le produit a éte vendu dans l'un ou l'autre des lieux.

Est-ce que c'est plus clair?
Merci encore 🙂
 
Re : Copier-Coller une plage de donnée d'une feuille a une autre

Pour le fichier je ne peux pas vraiment puisque c'est une peu confidentiel mais je vais essayer de fournir un exemple simplifié bientôt
 
Re : Copier-Coller une plage de donnée d'une feuille a une autre

Oui c'est plus clair, quoique...
En fait, sans fichiers, sans tes critères exacts, on ne peux que te proposer un "schéma" de macro, mais pas le code exact te permettant de faire ce que tu veux.
Est ce plus clair là?

Admettons, tu souhaites :
copier-coller chacune leur tour chaque ligne de G:Y depuis le début de ma liste de produit jusqu'à la fin d'une feuille nommée "ventes" jusqu'à une la plage C4-Y4 d'une autre feuille nommée "worksheet".
Ceci peux se traduire, en VBA par le code :
Code:
Dim Lig&, i& , crit1$, crit2$, crit3$
crit1 = "LieuDeVente1"
crit2 = "LieuDeVente2"
crit3 = "LieuDeVente3"
i = 0
With Sheets("ventes") 'Depuis la feuille ventes
    For Lig = 37 to 194 'de la ligne 37 à 194
        If .Range("A" & Lig).Value = crit1 And .Range("H" & Lig).Value = crit2 And .Range("R" & Lig).Value = crit3 Then
            .Range("G" & Lig & ":Y" & Lig).Copy Sheets("worksheet").Range("C4").Offset(i, 0)
            i = i + 1
        End If
    Next
End With

Mais comme je reste persuadé que tu ne pourras pas adapter ce code à ton fichier, merci de nous en fournir un exemple, sans données confidentielles bien entendu.
 
Re : Copier-Coller une plage de donnée d'une feuille a une autre

Bonjour,
perso quand je ne trouve pas, je fait une macro et je la copie colle dans ma page de code, j'adapte bien sûr si besoin.
Ou j'ajoute Public devant le Sub en début de macro et je rajoute le nom apès Sub sans les() avant le End Sub.
Ex: Sub Macro1() renoméé en Sub Hyperlien(), ça donne
Code:
Public Sub TriHyper()
Dim i As integer
BlaBlaBla
Etc

Hyperlien
End Sub
Voili, voilou.
 
Re : Copier-Coller une plage de donnée d'une feuille a une autre

Merci pour l'exemple de code, ça m'aide déjà pas mal.
J'ai fait un fichier simplifié avec des données fausses mais qui est dans la même configuration que le mien, c'est peut-être mieux pour répondre au problème.
Merci 🙂
 

Pièces jointes

Re : Copier-Coller une plage de donnée d'une feuille a une autre

OK. Merci.
Un peu tard pour moi, mais peut être que quelqu'un prendra le relais.
Sinon, je reviens lundi!

Mais :
Toujours pas les critères de sélection des lignes à copier.....
 
Re : Copier-Coller une plage de donnée d'une feuille a une autre

J'ai juste rajouté une colonne indiquant le lieu de vente sur ce fichier.
En gros si le lieu est 1 on colle sur C4-Y4. Si le lieu est 2 on colle sur BC4-BY4 etc...
Voilà.
Bon week-end!
 

Pièces jointes

Re : Copier-Coller une plage de donnée d'une feuille a une autre

Désolé,
il y a eu une erreur, en faisant ma recherche dans les discutions je me suis mélangé les pinceaux avec un Pb identique mais sur lequel il n'y avait eu aucune réponse j'en suis certain, là ça correspondait à ce que fait quand je n'y arrive pas, j'ai au moins une idée du code.
Merci et bonsoir, j'espère que ça ira mieux après un bon WE.
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
3
Affichages
240
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…