XL 2016 Demande d'avis sur la possibilité d'un système de recherche basé sur une base de données dans Excel

Pauuul35

XLDnaute Junior
Bonjour à tous,

J'aimerais recueillir vos avis et conseils sur la possibilité de mettre en place un système de recherche dans Excel, basé sur une base de données que je possède. J'ai une base de données contenant environ 3000 références de cuivres éléctroniques, avec les informations suivantes : épaisseur, nombre de couches, masse, longueur, largeur et masse surfacique déduite.

L'objectif de l'Excel que je souhaite concevoir est de permettre de saisir les informations relatives à la taille (longueur et largeur, pour obtenir la surface) ainsi que l'épaisseur du cuivre et le nombre de couches pour affiner la recherche. À partir de ces informations, je voudrais obtenir, avec une certaine marge, des références déjà réalisées qui ressemblent au nouveau cuivre afin de déduire la masse et également sa masse surfacique.

J'aimerais savoir si une telle fonctionnalité est réalisable dans Excel et quelles seraient les étapes à suivre pour mettre en place ce système de recherche. J'ai déjà les données nécessaires dans ma base de données, mais j'ai besoin de comprendre comment les exploiter efficacement pour obtenir des résultats pertinents.

Si vous avez des idées, des suggestions ou des exemples de formules ou de méthodes que je pourrais utiliser, je serais extrêmement reconnaissant de les partager. Je suis ouvert à l'apprentissage de nouvelles fonctionnalités ou à l'utilisation de macros si cela peut simplifier le processus.

Merci d'avance pour votre aide précieuse !
 
Solution
Voir V8 avec bouton de masquage. Par contre j'arrête là.
La prochaine fois, donnez toutes les spécifications au départ, ça sera moins "usant".
D'autant que votre analyse du VBA montre que vous êtes capable de faire cette simple macro de masquage :
VB:
Sub MasquerSiSup20()
    ActiveSheet.ListObjects("Tablo").Range.AutoFilter Field:=12, Criteria1:="<=0.2", Operator:=xlAnd
End Sub
L'enregistreur de macro vous le donne quasi in extenso.
Je vous laisse les évolutions suivantes. :)

Pauuul35

XLDnaute Junior
Bonjour

Toute la question est là : quelles sont les règles définissant une ressemblance ?
Bonjour Chris,

Mon idée est la suivante : en utilisant uniquement la surface du cuivre, nous pourrions effectuer une recherche dans la base de données en utilisant une marge de +/- 5 mm par rapport à la surface du nouveau cuivre que nous souhaitons évaluer. Si nous ne trouvons aucune référence correspondante, nous pourrions élargir la recherche avec une marge de +/- 8 mm, et ainsi de suite.

Une fois que nous avons une base de données contenant plusieurs références potentielles, nous pourrions affiner notre recherche en utilisant des critères supplémentaires tels que l'épaisseur du cuivre et le nombre de couches. Cela nous permettrait de sélectionner les références qui se rapprochent le plus de notre nouveau cuivre.

En utilisant cette méthode, nous serions en mesure d'estimer la masse potentielle du nouveau cuivre en fonction des résultats précédents, et de déduire la masse surfacique correspondante. Si cette masse surfacique dépasse un certain seuil, par exemple 0,60, nous pourrions être avertis qu'il est recommandé de mettre en place un programme spécifique pour ce cuivre.

Pensez vous qu'une telle chose serai possible a mettre en place ?
Merci d'avance.
 

sylvanu

XLDnaute Barbatruc
Supporter XLD
Re,
Je pense qu'une approche mathématique serait plus simple surtout si vous avez 3000 références.
Il suffit de trier tout ça par type de techno ( épaisseur, épaisseur cuivre, nombre de couches, surface )
Quand la liste est faite on peut en tirer pour chaque liste et pour chaque élément un poids surfacique en g/cm², et de là en tirer une valeur moyenne et un écartype.
Enfin pour un nouveau cuivre il suffit de rentrer les bons paramètres pour obtenir un poids moyen ainsi qu'une variation à 3 sigma par exemple.
 

Pauuul35

XLDnaute Junior
Bonjour Pauuul, Chris,
N'auriez vous pas un fichier test avec quelques valeurs représentatives ?
Une autre approche, si le nombre de références est élevé, est d'essayer d'en extraire un réseau de courbes paramétrées : Masse=f(L,l,e,N... )
Bonjour Sylvanu,

J'ai fait un fichier test pour que vous voyez un peu l'idée. Pensez vous que c'est réalisable ?
 

Pièces jointes

  • Test recherche.xlsx
    26.2 KB · Affichages: 1

sylvanu

XLDnaute Barbatruc
Supporter XLD
Re,
J'ai l'impression que dans votre base il manque un élément. Il y a trop de dispersion de données.
Peut être l'épaisseur cuivre ? 35 ou 70µm ?
Ou des cuivres avec et sans plan de masse, ou encore des cuivres ajourés ?

Par ex en 1.6mm 6 couches vous avez deux échantillons :
1686835388424.png

Soit 20% de dispersion, c'est trop important pour une variation de process.
Ou encore :
1686835455897.png

Le plus grand est le plus léger.

Avec une telle variation vous aurez du mal à prédire un poids.
Par ex, toujours en 1.6 6 couches, j'obtiens pour 228*212 entre 66g avec une méthode et 157 avec une autre, alors que votre base donne 115.
 

Pauuul35

XLDnaute Junior
Re,
J'ai l'impression que dans votre base il manque un élément. Il y a trop de dispersion de données.
Peut être l'épaisseur cuivre ? 35 ou 70µm ?
Ou des cuivres avec et sans plan de masse, ou encore des cuivres ajourés ?

Par ex en 1.6mm 6 couches vous avez deux échantillons :
Regarde la pièce jointe 1172556
Soit 20% de dispersion, c'est trop important pour une variation de process.
Ou encore :
Regarde la pièce jointe 1172557
Le plus grand est le plus léger.

Avec une telle variation vous aurez du mal à prédire un poids.
Par ex, toujours en 1.6 6 couches, j'obtiens pour 228*212 entre 66g avec une méthode et 157 avec une autre, alors que votre base donne 115.
Re,

Dans la base de données que j'ai récupéré, il y a des variations dans les données. Il est inévitable que certains cuivres présentent des caractéristiques particulières (les couches ne sont pas chargées en cuivre pareil, etc.) , et les données proviennent de plusieurs années, ce qui introduit une source potentielle d'erreur. Dans mon cas, l'objectif principal est de déterminer si le taux de masse surfacique dépasse 0,60. Pour les exemples que vous avez mentionnés, malgré les variations dans les données, ils restent bien en dessous de 0,60. Cela me permet de conclure qu'il est peu probable qu'une méthode spécifique soit nécessaire dans mon processus.

1686836617047.png

et
1686836666800.png


La précision n'est pas ma priorité principale. Je veux simplement être en mesure de prévoir à l'avance si je devrais envisager une méthode spécifique pour mes cuivres dans le processus de fabrication de cartes électroniques.
 
Dernière édition:

Pauuul35

XLDnaute Junior
Re,
Un essai en VBA en PJ.
J'ai limité arbitrairement une liste max à 10 de façon quand la surface exacte n'est pas trouvé, qui semble un von compromis entre résultat et vitesse de calcul.
A tester avec la "vrai" base.
Bonjour Sylvanu,

J'ai testé ton programme en ajoutant la base de données complète, et j'ai finalement obtenu environ 2000 références (j'ai éliminé celles qui avaient des valeurs aberrantes ou des informations manquantes). Cependant, j'ai rencontré un problème : le fichier plante chaque fois que j'essaie de l'exécuter. Il semble que la recherche soit trop lourde et provoque un dysfonctionnement.

Pour éviter cette surcharge de recherche, est-il possible de limiter la recherche en utilisant uniquement la surface comme critère lors de la première étape ? En cas d'équivalence avec plusieurs références, nous pourrions ensuite effectuer un deuxième tri pour affiner les résultats. Cette approche par étapes pourrait être une solution. Je te transmets le fichier contenant l'intégralité de la base de données.

Il est possible que le problème ne provienne pas uniquement de la taille de la recherche. Pourriez-tu me faire part de tes réflexions à ce sujet ?

Merci beaucoup pour ton aide précieuse.
 

Pièces jointes

  • Test recherche équivalence CIU.xlsm
    219.7 KB · Affichages: 2

sylvanu

XLDnaute Barbatruc
Supporter XLD
Bonjour Pauuul,
Le mieux est l'ennemi du bien.
En fait j'essayais de réduire la base à 10 CIU. Mais quelquefois c'est impossible et le système tourne à l'infini.
Donc j'ai mis une sécurité pour arrêter s'il ne converge pas.
Un essai en PJ. J'ai rajouté des données sur la liste résultante.

NB: Utilisez plutôt la version 3 ci dessous, plus aboutie.
 

Pièces jointes

  • Test recherche équivalence CIU V2.xlsm
    237 KB · Affichages: 3
Dernière édition:

sylvanu

XLDnaute Barbatruc
Supporter XLD
Re,
Une autre approche qui me semble bien meilleure.
1- Je copie la base
2- Je rajoute trois colonnes
a- ok si la techno est correcte
b- Je calcule le ratio Su/Su demandée
a- Je calcule la déviation par rapport à la surface demandée
3- Je tri sur ce ratio ( 0% étant parfait )
4- Je supprime les lignes inutiles.
On a ainsi vraiment des résultats encadrant au mieux le besoin.


NB: Dans votre base vous avez des nombres de couches décimales ( 1.2 1.6 1.8 2.3 ... )
Comment maîtrisez vous cette techno ? Comment fait on un CIU avec 1.2 couches ? 😂
 

Pièces jointes

  • Test recherche équivalence CIU V3.xlsm
    220.5 KB · Affichages: 1

Pauuul35

XLDnaute Junior
Re,
Une autre approche qui me semble bien meilleure.
1- Je copie la base
2- Je rajoute trois colonnes
a- ok si la techno est correcte
b- Je calcule le ratio Su/Su demandée
a- Je calcule la déviation par rapport à la surface demandée
3- Je tri sur ce ratio ( 0% étant parfait )
4- Je supprime les lignes inutiles.
On a ainsi vraiment des résultats encadrant au mieux le besoin.


NB: Dans votre base vous avez des nombres de couches décimales ( 1.2 1.6 1.8 2.3 ... )
Comment maîtrisez vous cette techno ? Comment fait on un CIU avec 1.2 couches ? 😂
Bonjour Sylvanu,

Tout d'abord, je tiens à te remercier sincèrement pour le temps que tu me consacres.

De mon côté, j'ai effectué quelques recherches. Tout d'abord, j'ai arrondi les valeurs d'épaisseur du CIU, ce qui a réduit le nombre de valeurs de ~70 à seulement 17. Cela permettra une recherche moins lourde et évitera des spécificités telles que 1.675, etc.

En outre, j'ai examiné les valeurs décimales du nombre de couches et j'ai constaté que certaines valeurs dans la base de données initiale étaient mal renseignées. J'ai corrigé ces valeurs avec les bonnes informations.

Concernant votre mention de la "techno est correcte", je voudrais clarifier ce que vous entendez par là. Est-ce que vous considérez que la technologie est correcte lorsque la masse surfacique est supérieure à 0,60 ? J'ai remarqué que dans le fichier, il est systématiquement indiqué que la technologie est correcte (voir photo ci-dessous). Pourriez-vous m'apporter des éclaircissements à ce sujet ?

1687162847714.png


Je trouve que l'idée du système de ratio et de déviation est excellente. Je prends note !

Je vais joindre le fichier contenant ma nouvelle base de données avec les valeurs arrondies et les corrections des anomalies liées au nombre de couches.

Que pensez-vous de cette recherche avec une base moins étendue ? J'attends votre retour avec impatience.
 

Pièces jointes

  • Test recherche équivalence CIU V2 (base de donnée ok).xlsm
    260.3 KB · Affichages: 1

sylvanu

XLDnaute Barbatruc
Supporter XLD
Bonjour,
Vous auriez du utiliser la V3 plutôt que la V2, je pense qu'elle est bien meilleure.
( d'autant que vous parlez de Techno ok qui n'est présent que dans la V3 )
"Techno correcte" ne tient pas compte de la masse surfacique. La masse surfacique n'est pas un paramètre de la techno.
En Fait "Techno"=ok si l'échantillon présente la bonne épaisseur CIU et le bon nombre de couches.

D'autre part, tel qu'est fait l'outil (V3) le paramètre ">2,4" ne sera pas pris en compte ni "<1" car le tri se fait sur des valeurs numériques. ( il est préférable de mettre toutes les épaisseurs dans la liste, ça ne change pas grand chose )

Pour l'exclusion des masse surfacique supérieures à 0.6, on peut si vous le voulez intégrer cette contrainte dans la Techno, qui deviendrait alors :
Techno=ok si :
- Epaisseur CIU correcte
- Nombre de couches correcte
- Masse surfacique <0.6
 

Discussions similaires

Statistiques des forums

Discussions
315 092
Messages
2 116 119
Membres
112 666
dernier inscrit
Coco0505