VBA - Recherche matricielle

9exemple.xlsx (17.10 Ko)

Bonjour à tous,

Je sollicite votre aide car je débute dans la VBA et je patauge dans le code malgré avoir fait plusieurs essais avec l'aide des cours.

Je suis en train d'optimiser un tableau de suivi d'affectation. Pour cela, j'ai créé un onglet récapitulatif dans lequel je peux changer la personne (Case B4) et les formules requêtent dans tous les onglets (qui tracent individuellement chaque équipement spécifique, exemple ici : suivi des perceuses et suivi des visseuses).

Problème : comme vous pourrez le constater, la recherche matricielle pompe beaucoup de ressources, et encore il ne s'agit ici que d'un petit exemple, le vrai tableau fait environ un 30ène de lignes par 6 colonnes.

Si vous pouvez me dépanner pour remplir les quelques cases en jaune, j'étudierais comment vous avez monté les formules et j'adapterai au vrai tableur.

Merci d'avance,

Pierre

Bonjour,

Avec tableaux structurés et fonction BDLire, c'est instantané :

80exemple-bdlire.xlsx (18.40 Ko)

Bonjour Patrice,

Merci pour votre réponse rapide !

Je ne connaissais pas la fonction BDLire mais elle fait parfaitement le travail ! Je viens de l'étendre à tout mon tableau et tout se mets à jour instantanément, je peux pas demander mieux .. :)

Bonne soirée !

Bonjour Patrice,

Je me permets de ré-ouvrir le sujet (je ne sais pas si on peut le faire ou si je dois créer un nouveau sujet), j'aimerai aller plus loin car j'aurais Demain dans ce tableau des profils de collaborateurs différents. Je me dis que figer une trame qui va requêter dans les onglets, c'est un bon début mais dans l'idéal, si il pouvait plutôt me sortir une liste du matériel effectif que possède le collaborateur effective (les champs vides m'intéressent peu finalement).

Ce serait plus pertinent car si je rajoute beaucoup d'onglets de suivi par type d'appareil, sur l'onglet Inventaire par collaborateur, le haut de la trame sera vide si il ne possède pas les 20 premiers équipement par exemple et on devra aller chercher plus bas l'information .. pas très intuitif / ergonomique !

Comment voyez vous les modifications à apporter ? On peut rester sur de la formule ou il faut partir sur du code ?

Sachant que je vais devoir coder puisque je voudrais : un suivi des modifications (historisation des affectations) donc certainement une page qui trace tout et un onglet au début qui requête suivant tel ou tel matériel en particulier, des mails automatiques envoyés aux collaborateurs leur rappelant la vérification matériel 30J et 15J avant échéance avec le responsable de service en copie et si possible un verrouillage des onglets suivant tel ou tel responsable de service (un responsable service A ne peut pas modifier les infos du service B).

Bonne journée :)

Bonjour,

Les fonctions base de données d'Excel sont très puissantes mais peu utilisées car, d'une part elles nécessitent l'emploi d'une plage de critères et d'autre part leur syntaxe est très particulière dans le cas de critères dynamiques (critères formulés).

Aujourd'hui, elle peuvent être avantageusement remplacées par PowerQuery qui est spécialisé dans la requête de base de données.

Par contre, créer un onglet pour chaque type de matériel est une très mauvaise idée. Il serait nettement préférable et bien plus simple d'avoir un seul tableau, en ajoutant une colonne pour le type de matériel. Il est alors simple de requêter ce tableau pour obtenir les éléments concernant un type de matériel donné : un seul onglet supplémentaire suffit.

Rechercher des sujets similaires à "vba recherche matricielle"