Code VBA permettant de copier un tableau
Résolu/Fermé
Simoaasri
Messages postés
19
Date d'inscription
vendredi 3 novembre 2017
Statut
Membre
Dernière intervention
17 août 2018
-
27 déc. 2017 à 10:16
Patrice33740 Messages postés 8561 Date d'inscription dimanche 13 juin 2010 Statut Membre Dernière intervention 15 mars 2025 - 27 déc. 2017 à 17:54
Patrice33740 Messages postés 8561 Date d'inscription dimanche 13 juin 2010 Statut Membre Dernière intervention 15 mars 2025 - 27 déc. 2017 à 17:54
Bonjour,
Je voulais ecrire un code qui permet de copier des lignes de tableau dans une autre feuille quand les valeurs de certaines cases sont identiques.
Donc dans mon classeur je veux que quand une case de la colonne "ref pay" de la feuille "facture" est égale à une case dans la colonne "livraison" de la feuille "Avoirs", ca copie toute la ligne de la feuille facture dans la feuille "lignes à relier".
Voila une capture du code que j'ai utilisé.

Je voulais ecrire un code qui permet de copier des lignes de tableau dans une autre feuille quand les valeurs de certaines cases sont identiques.
Donc dans mon classeur je veux que quand une case de la colonne "ref pay" de la feuille "facture" est égale à une case dans la colonne "livraison" de la feuille "Avoirs", ca copie toute la ligne de la feuille facture dans la feuille "lignes à relier".
Voila une capture du code que j'ai utilisé.
A voir également:
- Code VBA permettant de copier un tableau
- Code ascii tableau - Guide
- Tableau word - Guide
- Tableau croisé dynamique - Guide
- Trier un tableau excel - Guide
- Comment déverrouiller un téléphone quand on a oublié le code - Guide
2 réponses
Patrice33740
Messages postés
8561
Date d'inscription
dimanche 13 juin 2010
Statut
Membre
Dernière intervention
15 mars 2025
1 779
27 déc. 2017 à 14:13
27 déc. 2017 à 14:13
Bonjour,
Plutôt qu'un image tu aurais pu mettre le code dans ton texte !!!
Essaies :
Plutôt qu'un image tu aurais pu mettre le code dans ton texte !!!
Essaies :
Option Explicit Sub relier() Dim src As Range 'Source à comparer Dim cmp As Range 'Élément de comparaison Dim dst As Range 'Destination Set src = Worksheets("Facture").Range("A2") Set dst = Worksheets("Les lignes à relier").Range("A2") Do While src.Formula <> "" Set cmp = Worksheets("Avoirs").Range("A2") Do While cmp.Formula <> "" If src.Value = cmp.Value Then src.Resize(1, 12).Copy Destination:=dst Set dst = dst.Offset(1) End If Set cmp = cmp.Offset(1) Loop Set src = src.Offset(1) Loop End Sub
Simoaasri
Messages postés
19
Date d'inscription
vendredi 3 novembre 2017
Statut
Membre
Dernière intervention
17 août 2018
27 déc. 2017 à 14:20
27 déc. 2017 à 14:20
Bonjour Patrice, je te remercie pour ta réponse mais quand j'execute la macro il n'y a rien qui se passe, je te mets le fichier en lien ci dessous si tu veux bien regarder, Merci
https://mon-partage.fr/f/xxFUluz1/
https://mon-partage.fr/f/xxFUluz1/
Patrice33740
Messages postés
8561
Date d'inscription
dimanche 13 juin 2010
Statut
Membre
Dernière intervention
15 mars 2025
1 779
27 déc. 2017 à 17:54
27 déc. 2017 à 17:54
Bonjour,
Je suis pas sur d'avoir compris ce que tu voudrais !
Voici un essai (la macro met plus d'une minute pour s'exécuter) :
https://mon-partage.fr/f/lEvCUKCO/
Je suis pas sur d'avoir compris ce que tu voudrais !
Voici un essai (la macro met plus d'une minute pour s'exécuter) :
https://mon-partage.fr/f/lEvCUKCO/