Bonjour à tous ,
Après avoir consulté bon nombre de sujets , je ne trouve pas exactement la réponse à la question que je me pose :
Je dispose de 3 fichiers excel differents :
Exemple :
fichier1 contenant une balance comptable ( la base de donnée )
fichier2 contenant dans chaque onglet certains numero de comptes
exemple onglet 1 : tous les comptes A50001,A50002,A50003 sont dans l'onglet dav01
exemple onglet 2 : tous les comptes A40000;A40001;A50009 sont dans l'onglet dav02 etc...
fichier 3 : Je dois coller dans ce nouveau fichier :
- tout les comptes A50001 avec leur montants
a la suite tous les comptes A50002 avec leur montants.
C'est à ce moment la que ca devient compliqué pour moi :
je ne sais pas coller tous les comptes A50001,A50002,A50003 dans l'onglet DAV01 car c'est une variable
ect....
fichier 3 : Je dois coller dans ce nouveau fichier :
- tout les comptes A50001 avec leur montants
a la suite tous les comptes A50002 avec leur montants.
Je dispose actuellement du code suivant pour filtrer les données et les coller à un autre emplacement , mais je n'arrive pas à intégrer la condition suivante :
Coller les données dans la feuille dav01 a condition que les numeros de compte correspondant soit valables
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
17
18
19
20
21
22
23
24
25
26
27 Sub Macro6() 'Déclarations des variables Dim a As Worksheet, b As Worksheet Dim plage As Range 'définition des variables, ici les feuilles Set a = Sheets("données12m"): Set b = Sheets("amundi12m") 'on efface les colonnes A et B de la feuille Result b.Columns("A:B").Clear 'on applique le filtre sur la feuille Données With a .AutoFilterMode = False Set plage = .[A1].Resize(.[A65536].End(xlUp).Row, 3) plage.AutoFilter 3, "<>NON" 'On définit la plage de cellules à copier Set plage = _ Intersect(.Range("A:B"), plage.SpecialCells(12)) 'on copie le résultat du filtre en feuille Result plage.Copy b.[A2] 'On ôte le filtre automatique sur la feuille Données plage.AutoFilter End With 'On "vide" les variables Set a = Nothing Set b = Nothing Set plage = Nothing End Sub
Merci à tous pour votre aide
Partager