Liste sans doublons à partir de plusieurs feuilles

  • Initiateur de la discussion Initiateur de la discussion KIM
  • 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 !

KIM

XLDnaute Accro
Bonjour,

Pour une seule feuille DATA, j'arrive à récuperer la liste sans doublons des données de la col I (à partir de I9: …), la trier et la recopier dans la feuille TDB col C à partir de C9, ensuite par des formules je recupère les LIBELLE1 et LIBELLE2 à partir de la feuille REF.
Maintenant Mes données sont sur 2 feuilles DATA1 et DATA2 au meme format. J'ai besoin de votre aide et vous en remercie.
Je cherche à récupérer de ces 2 feuilles la liste sans doublons des données de la meme col I de chaque feuille, la trier, la recopier dans feuille TDB et compléter par les libellés correspondants. Quand le libellé ne se trouve pas dans la feuille REF je remplace le libellé par "NC".
voir fichier joint

Amicalement
KIM
 

Pièces jointes

Re : Liste sans doublons à partir de plusieurs feuilles

Bonsoir Robert, et le forum,
Merci J'ai testé sur l'exemple, demain je testerai sur un fichier reel.
J'ai regardé la macro,
dans la partie:
'Ajout des formules
For y = 1 To tval.Count
.Cells(y + 8, 2).FormulaR1C1 = _
"=IF(ISNA(MATCH(RC[1],refs1,0))=TRUE,""NC"",INDEX(refs3,MATCH(RC[1],refs1,0),3))"
.Cells(y + 8, 4).FormulaR1C1 = _
"=IF(ISNA(MATCH(RC[-1],refs1,0))=TRUE,""NC"",INDEX(refs3,MATCH(RC[-1],refs1,0),1))"
Next y
1- la macro recopie les formules et les execute. Dans chaque cellule concernée, je retrouve la formule. Est-il possible de ne recopier que le resultat de la formule
2- La macro initiale (sur une feuille DATA) et celle là (sur 2 feuilles) vont etre beaucoup utilisées. Est-il possible de les re-ecrire au format fonction avec comme parametre (Feuil_Origine, Feuille_cible, col_origine, col_cible).
Cela permet d'appeler la fonction chaque fois que c'est necessaire.
Merci d'avance
et bonne soirée
Amicalement
KIM
 
Re : Liste sans doublons à partir de plusieurs feuilles

Bonjour Kim, bonjour le forum,

Tu parlais de récupérer les libellés par des formules dans ton premier post. C'est pour cela... J'aurais fait différemment sinon. Maintenant, comme je n'avais pas envie de tout refaire j'ai juste fait un copier/Collage Special - Valeurs...
Par contre pour la fonction, désolé mais je ne sais pas faire.
 

Pièces jointes

Re : Liste sans doublons à partir de plusieurs feuilles

Bonjour Robert et le forum,
Merci pour ton aide rapide,
Cela m'a permis d'avancer car mes données deviennetnt importantes, plus de 80 000 lignes et je suis obligé de les recopier sur 2 feuilles Excel.
Bonne journée
Amicalement
KIM
 
Re : Liste sans doublons à partir de plusieurs feuilles

Bonjour Robert, Bebere et le forum,
@Bebere,
Je viens de trouver ta macro pour un appel de procedure, je vais la regarder et essayer de l'adapter à mes besoins.

@Robert, Bebere et le forum,
J'utilise actuellement la liste unique multifeuilles de Robert et je complète mon tableau TDB par des formules SOMMEPROD. La feuille TDB est une recap des depenses par feuille DATA et par SRV (voir fichier joint)
c-à-d:
-Dans A5 Je sélectionne le SRV (exemple S3)
-A partir de la ligne 32 je recupere de chaque feuille les lignes qui correspondent au SRV selectionné.
- le tableau DEPENSES (lignes 9 à 26) fait un total par DATA des depenses de chaque DEP (voir fichier joint)
- En fin de traitement, recopier la feuille TDB dans une nouvelle feuille au nom de SRV. Si SRV = "*", le calcul se fait sur tous les SRV, c-à-d sans prendre compte du choix du SRV.
Le tableau DEPENSES est calculé actuellement par des formules SOMMEPROD. Pour un petit fichier aucun probleme mais mon fichier final se compose de 5 feuilles DATA avec pour chaque feuille au moins 50 000 lignes. Le calcul prend un temps enorme et je recherche une solution VBA.
J'ai besoin de votre aide et vous en remercie vivement. Est-ce que je dois ouvrir un nouveau fil ou je conserve ce fil.
Merci beaucoup de votre aide.
Amicalement
KIM
 

Pièces jointes

Re : Liste sans doublons à partir de plusieurs feuilles

Bebere à dit:
bonjour Kim,Robert
reste bien avec nous,donne-nous un temps d'attente pour la réponse
à bientôt
Bonjour Bebere, Robert et le forum,
En attendant, je tiens à vous remercier tous de votre disponibilité et du temps que vous consacrez à nous aider sur ce forum.
Amicalement
KIM
 
Re : Liste sans doublons à partir de plusieurs feuilles

Bonjour Bebere et le fil,
Ci-joint le Tableau final avec les modifs en jaune et te remercie d'avance.
Effectivement quand il n'y a pas de SRV sélectionné (c-à-d SRV = * les montants par DEP ce sont les sommes des montants sans tenir compte du nom du SRV. Il n'y aura pas de récapitulatif, à partir de la ligne 32, des données utilisées dans ce calcul.
Pour SRV=* le nom de la nouvelle feuille peut etre SRV_Global

Quand je selectionne un SRV par exemple S3, Tout le calcul ci-dessus se fait pour ce SRV et pour tous les DEP trouvé et listé sans doublons dans la col A ci-dessus
el le nom de la nouvelle feuille de calcul pour ce SRV sera S3, le nom du SRV sélectionné.
Ensuite à partir de la ligne 30 recopier les lignes de DATA1 et de DATA2 utilisées pour S3.

J'espère etre clair et non pas compliqué.
Merci d'avance
Amicalement
KIM
 

Pièces jointes

Re : Liste sans doublons à partir de plusieurs feuilles

Bonjour Bebere et le fil,
Merci pour la version 5v1, je viens de la tester:
1- quand je clic sur le bouton, une nouvelle feuille se cree avec le nom du SRV slectionné (ex SVR_S1). Quand je lance de nouveau la macro avec le meme SRV, j'ai un message d'erreur que la feuille existe dèjà. Est-il possible de tester si la feuille existe dèjà, la vider et la remplir ensuite avec le resultat.
2- A l'origine, dans les feuilles DATA1, DATA2, la ligne 8 est celle des titres de colonnes et les données sont à partir de la ligne 9. Pour le 1er lancement de la macro, il modifie les feuilles DATA en supprimant la ligne des titres et la mettre à la fin des données et les données se retrouvent à partir de la ligne 8. Cela donne un resultat faux car la ligne 8 n'est pas prise en compte dans le calcul. Pour tester remplace la 1ere cellule des donnes de la colonne I par un nouveau nom DEP ex K12 et lance le calcul.
3- La 1ere col (col A) de la feuille feuille resulta créée, se trouvent les codes SVR. Est-il possible de mettre avant ou après les libellés de ce code SVR qui se trouvent dans la feuille REF col E et col C
4- C'est bien la procedure "Appel" qui est lancée. Est-ce que les parametres definis dans cette procedure sont pris en compte ou sont definis dans les autres procedures. Si je souhaite commencer l'ecriture du resultat à partir de la ligne 9, col 2 que dois-je changer?
Merci d'avance
Amicalement
KIM
 
Re : Liste sans doublons à partir de plusieurs feuilles

bonsoir Kim
le début c'est procédure appel ensuite appelle 2ème procédure avec passage de paramètres la 2ème appelle la 3ème,variable public plgfinal
2 variables ldebut et ldebut1 tu changes la valeur de ldebut et le reste suit
ldebut1 pour éviter d'écrire dans tableau du haut
corrigé fautes
à bientôt
 

Pièces jointes

Re : Liste sans doublons à partir de plusieurs feuilles

Bonjour Bebere et le forum,
Merci, la macro fonctionne bien avec les données test des feuilles REF, DATA1 et DATA2. Elle m'est très utile. J'ai regardé le code, j'ai eu du mal à le comprendre ligne par ligne pour l'adapter à mes données réelles.
1- Avec la version precedente, la "LISTE DE toutes les lignes DEPENSES PAR SRV de chaque feuille" n'est pas collé au tableau dessus. Comment je peux rajouter 5 lignes blanches et une nouvelle feuille (newpage pour l'impression) entre les 2 tableaux.
2- La liste des "Dep" sans doublons s'est faite à partir de la col I de chaque feuille DATA et les colonnes des sommes à cumulées par SRV (col B) et DEP sont col D,E, et G. Quelles sont les lignes du code à modifier pour l'adapter aux données réelles sachant que les colonnes traitées ne sont pas les mêmes.
Est-il possible de les déclarer toutes les colonnes à traiter dans des variables que je peux les modifier selon mes données sources. J'ai plusieurs modèles différents de données sources à traiter.
3- STP as-tu le temps de me commenter la macro CalcData et surtout les lignes avec les offset, les RANGE etc...
Merci d'avance de ta disponibilité.
Amicalement
KIM
 
- 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

Retour