Rechercher/comparer entre groupes de lignes

Bonjour à toutes et à tous,

Alors voila, j'ai un fichier de séquence rempli de 0, 1 et -1.

De quoi finir une plaquette de doliCRANE ... fait pas bon être informaticien defois !!

Mon besoin et de comparer/rechercher une ou des lignes qui seraient communes dans des groupes de lignes.

En language "simple" cela donne :

Je choisis 2 groupes de lignes de la 100 à la 300 et de la ligne 700 à la 900.

Ma question : existe il une ou des lignes présentent à la fois dans ces deux groupes de lignes ?

Je ne vois pas comment faire !

L'objectif et de trouver la séquence qui fout la m... dans la gestion des données.

C'est impossible à débuger car tout est asynchrone , je ne rentre pas dans les détails car rend fou

Et trouver la ligne revient à essayer de trouver une ligne dans 3 puissance 63 possibilités.

Par contre on connait les plages horaires des pannes du coup ça réduit le champ d'application.

Je mets un fichier exemple qui est identique au vrai fichier.

Merci pour l'aide que vous pourrez m'apporter.

Yoki

10fichier-de-datas.xlsx (272.67 Ko)

Petit add :

Si jamais je ne suis pas clair dites le moi ...

Et je ne suis pas un mancho j'ai essayé mais ça ne donne rien ...

personne pour m'aider

personne pour m'aider

Salut Yoki,

ça me plaît comme truc mais pas dispo avant 22.00-22.30...

Tu peux réexpliquer très concrètement?

Je comprends vite mais il faut m'expliquer longtemps!

A+

curulis57 a écrit :

Salut Yoki,

ça me plaît comme truc mais pas dispo avant 22.00-22.30...

Tu peux réexpliquer très concrètement?

Je comprends vite mais il faut m'expliquer longtemps!

A+

Attend je reprends mon souffle !!!

Concrètement :

Je veux rechercher et vérifier si il existe des lignes qui sont présentes à la fois dans une plage et dans une autre.

Exemple : y'a t'il une ligne identique (ou plusieurs) qui est présente à la fois dans la plage de ligne de 10 à 70, et dans la plage de ligne de 100 à 300, si oui laquelle.

Dit moi si c'est pas clair ... j'ai mis le fichier au dessus.

Apparement c'est impossible a faire ???

Bonsoir,

si , c'est possible, mais de la réflexion il faut, je suis certain qu'une voir plusieurs solutions vous seront proposées...

Salut Yoki,

eeeeeeeh, une seconde!

Ça avance, mais, cool, quoi! 8)

Un peu de patience!

A+

Re Yoki, bonsoir curulis57,

voici les résultats de ma routine :

yoki a écrit :

Je choisis 2 groupes de lignes de la 100 à la 300 et de la ligne 700 à la 900.

Yoki

Pour ces deux plages ci-dessus, aucune ligne identique.

yoki a écrit :

... qui est présente à la fois dans la plage de ligne de 10 à 70, et dans la plage de ligne de 100 à 300, si oui laquelle.

Yoki

Pour les deux autres ci-dessus, de même, aucune ligne identique.

Pour deux plages identiques, de la ligne 2 à 1246, il y aurait 111 lignes identiques.

Si ces résultats concordent avec ceux de curulis57, nous devrions être proche de solutions plausibles...

Bonjour !!

Je ne sais pas si c'est plausible .... mais c'est cool vraiment, vraiment ...

Je patiente du coup ...

Quand je donnais les exemples de numéro de ligne, c’était un exemple.

Ça pourrait parfaitement être de la ligne 10 à 30 et 200 à 700.

Bonjour,

une proposition, bornes à saisir en BQ1:BT1.

Si équivalence, elle porte en n° le n° de la 1ère ligne où cette combinaison est apparue.

Il suffit de filtrer sans les 0 pour avoir le résultat.

eric

PS : j'ai copié des lignes de 100-200 en 700-900

Bonsoir tout le monde,

voici ma proposition :

Second onglet, saisir les lignes des plages respectives dans le tableau prévu à cet effet.

lancer la recherche, le résultat s'affiche dans les colonnes A et B, une ligne par doublon.

à adapter ou améliorer selon vos besoins.

Bonjour Yoki,

Bonjour Tihii, Eriiic,

Voilà ma petite participation à la guérison de tes maux de crânes!

Parti dans mes délires, il m'a fallu un peu de temps pour m'y retrouver moi-même... en espérant ne pas être tombé à côté!

Plusieurs plages de recherche

- tu as 6 plages possibles pour étendre tes recherches (ça sert à rien, sans doute, mais tu noteras que je n'ai pas utilisé les 16.000 colonnes d'Excel non plus!)

Plusieurs modes de recherche

- avec une ligne de référence

> dans une plage (recherche de doublons) ;

> dans plusieurs plages (recherche de concordance de cette ligne précise) ;

- sans ligne de référence

> dans une plage : chaque ligne scanne sa plage à la recherche de ses doublons

> dans plusieurs plages (le cas que tu nous présentais) : chaque ligne de la première plage scanne sa plage et les autres à la recherche de ses petites sœurs.

Chaque plage se distingue des autres par sa couleur, reprise dans les étiquettes dans le tableau de paramétrage, à droite de ton tourbillon de 1-0.

En-dessous, les résultats qui ne se calculeront que si la première plage est sélectionnée! Service minimum pour que la macro démarre!

Tu auras deviné que le bouton de décollage est le bouton rouge, lequel devient vert après le calcul.

Pas vraiment nécessaire ce bouton vert puisque son office de nettoyage de tes paramètres est doublé par un clic sur les étiquettes de couleur.

Consultation des résultats

En cliquant sur un des nombres affichés sous les étiquettes, une macro colore les lignes correspondantes selon la couleur de leur plage et fixe l'affichage sur elles (du moins, la première).

Un simple clic te ramène en haut de la page.

Encodage des paramètres

Si tu ne trouves pas ton bonheur ici...

D'abord sélectionner la cellule qui se colore de vert, en attente.

  • en tapant gentiment les chiffres dans les cellules ad-hoc ;
  • en sélectionnant une cellule puis en cliquant sur la ligne souhaitée de ton tableau qui capte alors le n° de ligne (X2 pour une plage, forcément) ;
  • après avoir sélectionné une cellule de paramétrage d'une plage, tu peux sélectionner cette plage directement dans ton tableau : la macro calcule les première et dernière lignes ;
  • le petit bouton jaune dans la première plage sélectionne d'office tout ton tableau.

Il reste 2 trucs à améliorer peut-être :

  • supprimer des résultats des calculs les lignes qui n'apparaissent pas dans toutes les plages, histoire d'apprécier d'un coup d'œil que tu ne t'es pas échiné en vain sur ton clavier!
  • exécuter le calcul en utilisant un tableau pour accélérer le traitement.

Dans un jour ou deux, ou trois...

On va d'abord voir si ceci correspond à tes premiers besoins!

Allez, dodo, maintenant!

A+

12datas.xlsm (387.56 Ko)

Bonsoir,

curulis57 a écrit :

Bonjour Yoki,

Bonjour Tihii, Eriiic,

Voilà ma petite participation à la guérison de tes maux de crânes!

Parti dans mes délires, il m'a fallu un peu de temps pour m'y retrouver moi-même... en espérant ne pas être tombé à côté!

Plusieurs plages de recherche

- tu as 6 plages possibles pour étendre tes recherches (ça sert à rien, sans doute, mais tu noteras que je n'ai pas utilisé les 16.000 colonnes d'Excel non plus!)

Plusieurs modes de recherche

- avec une ligne de référence

> dans une plage (recherche de doublons) ;

> dans plusieurs plages (recherche de concordance de cette ligne précise) ;

- sans ligne de référence

> dans une plage : chaque ligne scanne sa plage à la recherche de ses doublons

> dans plusieurs plages (le cas que tu nous présentais) : chaque ligne de la première plage scanne sa plage et les autres à la recherche de ses petites sœurs.

Chaque plage se distingue des autres par sa couleur, reprise dans les étiquettes dans le tableau de paramétrage, à droite de ton tourbillon de 1-0.

En-dessous, les résultats qui ne se calculeront que si la première plage est sélectionnée! Service minimum pour que la macro démarre!

Tu auras deviné que le bouton de décollage est le bouton rouge, lequel devient vert après le calcul.

Pas vraiment nécessaire ce bouton vert puisque son office de nettoyage de tes paramètres est doublé par un clic sur les étiquettes de couleur.

Consultation des résultats

En cliquant sur un des nombres affichés sous les étiquettes, une macro colore les lignes correspondantes selon la couleur de leur plage et fixe l'affichage sur elles (du moins, la première).

Un simple clic te ramène en haut de la page.

Encodage des paramètres

Si tu ne trouves pas ton bonheur ici...

D'abord sélectionner la cellule qui se colore de vert, en attente.

  • en tapant gentiment les chiffres dans les cellules ad-hoc ;
  • en sélectionnant une cellule puis en cliquant sur la ligne souhaitée de ton tableau qui capte alors le n° de ligne (X2 pour une plage, forcément) ;
  • après avoir sélectionné une cellule de paramétrage d'une plage, tu peux sélectionner cette plage directement dans ton tableau : la macro calcule les première et dernière lignes ;
  • le petit bouton jaune dans la première plage sélectionne d'office tout ton tableau.

Il reste 2 trucs à améliorer peut-être :

  • supprimer des résultats des calculs les lignes qui n'apparaissent pas dans toutes les plages, histoire d'apprécier d'un coup d'œil que tu ne t'es pas échiné en vain sur ton clavier!
  • exécuter le calcul en utilisant un tableau pour accélérer le traitement.

Dans un jour ou deux, ou trois...

On va d'abord voir si ceci correspond à tes premiers besoins!

Allez, dodo, maintenant!

A+

Excélent !

Bonjour,

Je reviens sur ce sujet car c'est le titre qui correspond à mon sujet mais je n'arrive pas à appliquer vos idées pour ma macro.

Je cherche à comparer des cellules (4 par lignes) de la Feuille 2 aux cellules de la Feuille 1.

Par exemple dans la Feuille 2 j'ai :

A B C D

01/04/18 -1 TRUC10

Et je voudrais savoir si ce groupe de cellule (et pas ligne car je veux garder ma formule dans la colonne H de ma Feuille 1) est présent dans la Feuille 1.

Si oui, ne pas insérer ce groupe de cellule.

Si non, insérer ce groupe de cellule.

Le résultat de cette macro pour cet exemple dans le fichier ci-joint serait que les groupes de cellule entre le 23 mars 2018 et le 10 avril 2018 se rajoute au dessus. Je ne pense pas qu'un tri soit nécessaire, quand je récupère mes données bancaires via un excel, j'aurais qu'à rajouter les dernières "lignes" les plus récentes.

J'avais pensé par commencer à vérifier via un For Each Cells et mettre les groupes de cellules non présente dans un tableau virtuel mais j'avoue me perdre un peu...

Le but final est de mettre à jour mes données bancaires dans un fichier excel pour le suivi de mes comptes.

Je suis aussi preneur de comment faire, et de ne pas avoir la réponse de suite

Voici le fichier :

15maj-compte.xlsm (17.97 Ko)

Merci,

Fred

Bonjour,

tu aurais dû démarrer ta propre question. Les anciennes avec plusieurs interventions sont moins regardées.

Le plus simple est de concaténer ta clé dans une colonne (que tu peux masquer).

Ensuite une simple .find sur ta colonne te donnera la réponse.

eric

Bonsoir Eric,

Ok merci je vais recréer un nouveau sujet en ayant une macro un peu plus détaillée avec tes informations

Rechercher des sujets similaires à "rechercher comparer entre groupes lignes"