Croiser des données

Nessie

XLDnaute Occasionnel
Bonjour,

Je souhaiterais faire un recoupement de références.
je m'explique : sur mon classeur, j'ai une feuille qui liste des annonces publiées sur un site Internet et une autre feuille qui liste les annonces archivées dans mon intranet.

Je souhaiterais tout simplement sur une 3ème feuille, lister les références communes aux deux fichiers, en clair voir quelles réf publiées je dois supprimer en comparant celles que j'ai archivées dans mon intra.

Je ne sais plus quelle formule serait la plus adéquate...

Merci pour vos réponses à cette question très simple...je sais...
 

Modeste

XLDnaute Barbatruc
Re : Croiser des données

Bonjour Nessie,

Merci pour vos réponses à cette question très simple...je sais...
Ça, ça reste à voir!?
Sans doute la fonction NB.SI sera-t-elle utilisée dans la solution ... mais avec un petit bout de fichier pour mieux comprendre, ce sera sans doute plus facile!

Remplacer les données potentiellement confidentielles par des données "bidon"
 

Nessie

XLDnaute Occasionnel
Re : Croiser des données

Voici le bout de fichier.
Onglet orange, ce que j'aimerais afficher, fruit du croisement par référence entre la feuilles REF_ARCHIVEES et chacune des autres feuilles.
Idéalement je mettrais bien un tite macro derrière chaque bouton ..... :rolleyes:
 

Pièces jointes

  • MAJ_Annonces.xls
    509.5 KB · Affichages: 33

Modeste

XLDnaute Barbatruc
Re : Croiser des données

Re-bonjour,

Idéalement je mettrais bien un tite macro derrière chaque bouton ..... :rolleyes:
Ah vouiche! ;) On a commencé avec une demande "simple" de 2 feuilles à comparer ... nous voilà avec 3 feuilles et une "tite macro".

Au risque de jouer l'empêcheur de tourner en rond, je propose du simple tout de même (il faudrait préciser pourquoi les résultats devraient apparaître sur une 3e feuille??)
Première proposition basique, donc: cette formule en G2 (par exemple) de la feuille "Liste_REF_ARCHIVEES" ... à recopier aussi loin que nécessaire (une seule référence commune trouvée!?):
Code:
=SI(NB.SI(Liste_Diff_S!$A$2:$A$34;$B2);"dans S";SI(NB.SI(Liste_Diff_C!$C$2:$C$644;$B2);"dans C";""))
 

Nessie

XLDnaute Occasionnel
Re : Croiser des données

Rhôôôôô !
meuh si ! c'est simple !
j'ai parlé de deux feuilles à comparer car ce qui est valable pour une sera valable pour l'autre feuille.
Donc dans l'absolu, il s'agit de comparer deux feuilles et afficher le résultat sur la troisème comme je l'ai expliqué.... non ?:D

Pourquoi une 3ème ? Aucune raison particulière, c'est la 1ère chose qui m'est venue à l'esprit. Peut-être ai-je pensé (à tort sans doute) que ce serait plus simple pour imprimer le listing...

Pour la macro, oh petit caprice de femme... :eek::rolleyes::cool:

Alors, je viens d'appliquer la formule et l'idéal serait que la référence s'affiche et non la mention de cette référence "dans C" ou "dans S". C'est pour ça que je souhaite avoir la liste des réf de S ou de C que je dois supprimer de la diffusion compte tenu du fait qu'elles soient archivées dans la base de l'agence...

Je n'ai pas été assez précise, désolée
 
Dernière édition:

Modeste

XLDnaute Barbatruc
Re : Croiser des données

Re²,

Pour la macro, oh petit caprice de femme... :eek::rolleyes::cool:
Et c'est là que, d'habitude, quelqu'un se précipite en disant: "ce que femme veut ...". Ma pauvre madame, la galanterie se perd ;)
Une macro pourquoi pas, mais alors explique ce qui doit apparaître et où? (tu as prévu deux boutons, tu veux des résultats distincts??). Tant qu'à faire, autant que la macro assure la mise à jour chaque fois que la feuille est activée!
Et puis, si macro il y a, tu te sens de taille à l'adapter, si le besoin s'en fait sentir un jour?

Alors, je viens d'appliquer la formule et l'idéal serait que la référence s'affiche et non la mention de cette référence "dans C" ou "dans S".
Euh ... ben alors, remplace "dans S" par B2 et "dans C" par B2 aussi ... mais alors tu ne sauras plus dans quelle liste la référence apparaît? Ou alors tu traites en 2 colonnes (une pour les "S" et une pour les "C")
 
Dernière édition:

Nessie

XLDnaute Occasionnel
Re : Croiser des données

Re²,

Et c'est là que, d'habitude, quelqu'un se précipite en disant: "ce que femme veut ...". Ma pauvre madame, la galanterie se perd ;)")
Je disais qu'effectivement, j'attendais une réactivité sans faille sur "ce sur femme veut...", je suggérais même la suite au cas où certains auraient oublié le dicton ! Bouh, je vais m'asseoir dessus.

Une macro pourquoi pas, mais alors explique ce qui doit apparaître et où? (tu as prévu deux boutons, tu veux des résultats distincts??). Tant qu'à faire, autant que la macro assure la mise à jour chaque fois que la feuille est activée!
Et puis, si macro il y a, tu te sens de taille à l'adapter, si le besoin s'en fait sentir un jour?
Mais euh ! Pourquoi tu fais qu'à m'embêter ??

Euh ... ben alors, remplace "dans S" par B2 et "dans C" par B2 aussi ... mais alors tu ne sauras plus dans quelle liste la référence apparaît? Ou alors tu traites en 2 colonnes (une pour les "S" et une pour les "C")
Re mais euh !

Plus sérieusement, je n'ai pas la science infuse et ne suis donc pas sûre que ma présentation soit la plus pertinente.
Tout ce que je souhaite c'est croiser les références de C et S avec les réf archivées, de sorte que je puisse avoir une liste des références encore diffusées sur C et S à archiver.
Pourquoi des boutons ? Bah parce que sur clic, j'aurais la liste des références pour C ou pour S et que je pourrais l'imprimer si besoin.

Pourquoi sur une feuille distincte ? Aucun caractère obligatoire à cela, je n'ai pas réfléchi (ça se voit je sais). J'ai juste pensé à l'affichage et à l'impression du résultat...
 
Dernière édition:

Modeste

XLDnaute Barbatruc
Re : Croiser des données

Bonjour Nessie, le forum,

je suggérais même la suite au cas où certains auraient oublié le dicton !
J'ai eu beau consulter la liste des membres, Il ne semble pas fréquenter ce forum :rolleyes:

Une proposition par macro (puisque tu en rêvais!): en fonction du bouton activé, le "titre" en A1 change, de même que la liste des mandats et références. Ça semble fonctionner sur base de l'exemple que tu as fourni (si j'ai bien compris!)

Teste sur cet exemple, d'abord, puis sur un volume de données plus important si ça risque d'être le cas en situation réelle. Si le volume des trois feuilles à comparer s'avère nettement plus conséquent, on passera par un tableau ... dis-nous si le temps d'exécution devenait un peu long!
J'ai ajouté un ou deux commentaires dans le code ... tu nous diras si tu as des questions

PS: je me suis permis, dans cette version du fichier, de supprimer toutes les cases à cocher et listes déroulantes de la feuille "Liste_REF_ARCHIVEES", qui alourdissaient le fichier.
 

Pièces jointes

  • MAJ_Annonces (Nessie).xls
    117.5 KB · Affichages: 35

Nessie

XLDnaute Occasionnel
Re : Croiser des données

Bonjour Nessie, le forum,


J'ai eu beau consulter la liste des membres, Il ne semble pas fréquenter ce forum :rolleyes:
C'est fâcheux....

Une proposition par macro (puisque tu en rêvais!):
C'est y pas mignon !!!

en fonction du bouton activé, le "titre" en A1 change, de même que la liste des mandats et références. Ça semble fonctionner sur base de l'exemple que tu as fourni (si j'ai bien compris!)

Teste sur cet exemple, d'abord, puis sur un volume de données plus important si ça risque d'être le cas en situation réelle. Si le volume des trois feuilles à comparer s'avère nettement plus conséquent, on passera par un tableau ... dis-nous si le temps d'exécution devenait un peu long!
J'ai ajouté un ou deux commentaires dans le code ... tu nous diras si tu as des questions
Entendu ! Merci

PS: je me suis permis, dans cette version du fichier, de supprimer toutes les cases à cocher et listes déroulantes de la feuille "Liste_REF_ARCHIVEES", qui alourdissaient le fichier.
Mais tu as bien fait !!!! J'ai fait copy-paste de la base de la boîte qui ne permet aucun export ... je n'arrivais pas à les supprimer ! j'en ai rêvé et tu l'as encore fait !

Je reviens vers toi pour te dire.
 

Nessie

XLDnaute Occasionnel
Re : Croiser des données

Bonjour Nessie, le forum,
Une proposition par macro (puisque tu en rêvais!): en fonction du bouton activé, le "titre" en A1 change, de même que la liste des mandats et références. Ça semble fonctionner sur base de l'exemple que tu as fourni (si j'ai bien compris!)
Mortel !

Teste sur cet exemple, d'abord, puis sur un volume de données plus important si ça risque d'être le cas en situation réelle. Si le volume des trois feuilles à comparer s'avère nettement plus conséquent, on passera par un tableau ... dis-nous si le temps d'exécution devenait un peu long!
J'ai ajouté un ou deux commentaires dans le code ... tu nous diras si tu as des questions
Pas encore fait, faut que je recopie le code avec le fichier d'origine qui contient plus de ligne pour ARCHIVEES. D'ailleurs, tu as vraiment remis d'équerre le feuille ARCHIVEES. C'est propre, tu as fait quoi ?
 

Modeste

XLDnaute Barbatruc
Re : Croiser des données

tu as vraiment remis d'équerre le feuille ARCHIVEES. C'est propre, tu as fait quoi ?
ROGER2327 (que je salue, si d'aventure il passe par ici!) te répondrait que le théorème de Pythagore, judicieusement appliqué, devrait permettre de remettre à peu près n'importe quoi "à l'équerre"!

Mais j'imagine que tu parles de la suppression des cases à cocher et listes déroulantes qui semblent issues d'un copier-coller depuis une page web? Sur ma machine un peu vieillissante, les sélectionner (même partiellement) provoque des lenteurs allant parfois jusqu'au plantage. J'ai donc viré ces "cochonneries" via une macro un peu "brutale". :rolleyes:
 

Nessie

XLDnaute Occasionnel
Re : Croiser des données

Mais j'imagine que tu parles de la suppression des cases à cocher et listes déroulantes qui semblent issues d'un copier-coller depuis une page web? Sur ma machine un peu vieillissante, les sélectionner (même partiellement) provoque des lenteurs allant parfois jusqu'au plantage. J'ai donc viré ces "cochonneries" via une macro un peu "brutale". :rolleyes:

J'aime bcp le "brutale". Je vais aller regarder le code. Elle marcherait pour les lignes supplémentaires que je viendrai coller ?
 

Modeste

XLDnaute Barbatruc
Re : Croiser des données

Nessie à dit:
J'aime bcp le "brutale".
Le lecteur attentif notera que je fais un effort louable pour ne pas ajouter de commentaire ;)

Nessie à dit:
Je vais aller regarder le code. Elle marcherait pour les lignes supplémentaires que je viendrai coller ?
Je ne pense pas avoir laissé le code dans le classeur!? Ça effacerait toutes les formes (une forme automatique, une forme libre, un objet OLE ou une image, dixit Microsoft) présentes dans la feuille active.
Voici le code:
VB:
Sub effaceCochoncetés()
Application.ScreenUpdating = False
Application.EnableEvents = False
For Each f In ActiveSheet.Shapes
    f.Delete
Next f
Application.EnableEvents = True
Application.ScreenUpdating = True
End Sub
Ne pas oublier, donc -avant de lancer l'exécution- de s'assurer que la feuille "... ARCHIVEES" est active.
Attention, sur ma vieille machine, elle prend 3-4 secondes ... teste sur ton fichier exemple, avant d'aller plus loin!
 

Nessie

XLDnaute Occasionnel
Re : Croiser des données

Le lecteur attentif notera que je fais un effort louable pour ne pas ajouter de commentaire ;)


Je ne pense pas avoir laissé le code dans le classeur!? Ça effacerait toutes les formes (une forme automatique, une forme libre, un objet OLE ou une image, dixit Microsoft) présentes dans la feuille active.
Voici le code:
VB:
Sub effaceCochoncetés()
Application.ScreenUpdating = False
Application.EnableEvents = False
For Each f In ActiveSheet.Shapes
    f.Delete
Next f
Application.EnableEvents = True
Application.ScreenUpdating = True
End Sub
Ne pas oublier, donc -avant de lancer l'exécution- de s'assurer que la feuille "... ARCHIVEES" est active.
Attention, sur ma vieille machine, elle prend 3-4 secondes ... teste sur ton fichier exemple, avant d'aller plus loin!

Salut,

Euh.....je n'arrive pas à appliquer ton code masqué...:eek: ! Je n'ai pas réussi à être aussi "brutale"

Et sinon, merci pour tes macros qui fonctionnent nickel ! Je suis fan et j'ai même tout compris !
 

Discussions similaires

Statistiques des forums

Discussions
312 215
Messages
2 086 330
Membres
103 187
dernier inscrit
ebenhamel