Recherche des valeurs manquantes dans un tableau dynamique avec variable

FredExcelDownloads

XLDnaute Nouveau
Bonjour à tous et même bonne année,

Alors voilà, j’ai une colonne dans laquelle je souhaite rechercher la plus haute valeur selon les valeurs numériques existantes (Ex : 001, 002, 003,… La dernière sera donc 004).
Je recherche également cette valeur en fonction d’autres critères précis.
(Ex : "YDA" & "P" & "1" & "***" & "PPP0123").
Et cela, quelque soit l’ordre dans lequel se trouve ces codes (Cf. fichier joint).

Jusqu’ici, j’ai réussi à faire ce que je veux… même si j’aurai voulu les classer dans l’ordre croissant mais bon…
Je connais donc comme ça, la dernière valeur la plus haute afin de désigner une limite de comparaison aux valeurs manquantes.

Simplement, dans le cas où un des codes serait effacé volontairement et peut être plus dans un ordre chronologiques (Ce sont des numéros de fiches associés à une ou des tâches donc elles peuvent être annulées), cela sous-entendrait que les numéros auxquels aucunes fiches n’est associées serait libres…

Mais voilà !!! Je m’use les neurones sur la façon dont je peux traiter le balayement des variables contenues dans mon tableau dynamique… J’ai essayé « Application.Match » et autres subterfuges, mais là, je bloque car je ne trouve pas le moyen de trouver les valeurs manquantes (ici : 004, 005, 007) par rapport aux valeurs présentes (001, 002, 003, 006 et 008).

La finalité serait de savoir quels sont les numéros manquants pour proposer à l’utilisateur le choix de son numéro…

Je souhaiterai également ne pas à avoir à inscrire ces valeurs dans une colonne d’une feuille et pouvoir traiter ça directement avec les variables… (Ça doit bien être possible !!!)

J’ai simplifié le fichier d’origine et modifié les noms mais s’il était possible de plus, de les mettre dans l’ordre chronologique… J'espère que mon post est assez clair et compréhensible !!!

En vous remerciant par avance de vos propositions ou solutions…
 

Pièces jointes

  • DynTab.xls
    71.5 KB · Affichages: 61

vgendron

XLDnaute Barbatruc
Re : Recherche des valeurs manquantes dans un tableau dynamique avec variable

Salut,

Ci joint un exemple
j'ai nommé une cellule ValeurMax qui récupère la valeur max à partir d'une formule matricielle (à valider par Cttrl + Maj + Entrée)
dans la macro, j'ai créé une chaine "Newchaine" qui récupère les numéros manquants
le reste de ta macro. à partir de la ou tu n'en peux plus..;-) je l'ai passé en commentaire
 

Pièces jointes

  • Copie de DynTab.xls
    75 KB · Affichages: 48

FredExcelDownloads

XLDnaute Nouveau
Re : Recherche des valeurs manquantes dans un tableau dynamique avec variable

Salut vgendron,

Merci pour la contribution.

Le problème, c'est que ton test ne tient pas compte que la recherche doit s'effectuer également en fonction des paramètres tel que "YDA" & "P" & "1" & "***" & "PPP0123", vu que tu balayes la colonne D qui regroupe tous les numéros quelque soit les autres caractères. De plus, le classement par ordre croissant ne sera pas garanti lors de la saisie des numéros des fiches.

En ignorant ta formule matricielle et considérant que ma valeur Max est la valeur précédemment trouvée dans la création du tableau dynamique (ici ValMax = 8), le résultat est "7" puisque les autres numéros (de 1 à 6 puis 8) se trouvent déjà dans ma colonne mais ne correspondent pas forcément aux autres critères.

Mon idée était de voir si le fait d'avoir créé un tableau dynamique, on pouvait le traiter directement sans pour autant refaire une boucle sur la ou les colonnes. Mais boucler sur les numéros des codes demandés du tableau (qui a déjà trouver les codes présents) pour indiquer que tel numéro n'existe pas.

Ex : On recherche tout ce qui est de la forme "YDAP1***PPP0123"

On trouve "YDAP1001PPP0123" et "YDAP1003PPP0123" par exemple.

Et le code nous indique que "YDAP1002PPP0123" n'est pas présent.

Merci à toi et à ceux qui peuvent peut-être apporter un point de vue complémentaire ou différent.
 

vgendron

XLDnaute Barbatruc
Re : Recherche des valeurs manquantes dans un tableau dynamique avec variable

Hello
Voir PJ:
Je me suis amusé avec les dictionnaires..
regarde le code que tu pourras surement modifier pour récuperer les numéros que tu souhaites
le principe:
Dans la zone de data (tes colonnes A B C et D)
je cherche toutes les lignes qui répondent à tes critères (en ligne 30: cellules nommées Code1 Code2 et Code3)
quand j'en trouve une nouvelle, je la mets dans un dictionnaire avec la clé (Code1 & Code2 &Code3) avec l'élément 00x
j'en profite pour mettre le max à jour

je reparcours ce dicoPresent, et si une valeur est manquante, je la met dans le dicoAbsent

au final, le DicoAbsent contient toutes les valeurs manquantes pour un code donné
moi, ici, je me contente de te les afficher au fur et à mesure.. mais rien ne t'empeche de les ré utiliser ailleurs..

Je te préviens de suite.. il y a petit un souci pour le "format" de la valeur Max (string ou entier)
lance la macro tu comprendra..
mais bon. j'espère que ca va t'aider
 

Pièces jointes

  • FredExcel DynTab.xlsm
    37 KB · Affichages: 54

FredExcelDownloads

XLDnaute Nouveau
Re : Recherche des valeurs manquantes dans un tableau dynamique avec variable

Salut,

Bon, en regardant un peu la structure de ton code sur les dictionnaires, j'ai remanié la recherche des codes sans passer par les colonnes de gauches (Je préférais...) mais ton aide m'a été précieuse et je t'en remercie.

J'ai pu faire ce que je voulais avec, en plus, une rapidité d'exécution non négligeable.

Merci à toi vgendron ;)

Résolu
 

Discussions similaires

Statistiques des forums

Discussions
312 153
Messages
2 085 802
Membres
102 981
dernier inscrit
fred02v