Recherche base de donnée

Bonjour à tous,

Collectionneur dans l'âme, je possède une base de données pour recenser tous cela.

Oui mais j'aimerais pouvoir effectuer des recherches avec des critères de sélection. Je m'orientais tout d'abord vers de la VBA avec une listbox mais je ne sais pas du tout faire... du coup pour l'instant j'ai crée une feuille avec des listes déroulantes et je voudrais que lorsque je choisis les critères dans la liste, toute mes lignes correspondantes aux critères s'affichent.

Quelqu'un pourrais t-il m'aider à réaliser cela ?

Merci d'avance

24bdd.xlsx (36.67 Ko)

Bonjour et bienvenue sur le forum

Pourquoi n'utilises-tu pas un filtre de feuille de calcul, tout simplement ?

Comme ça :

Bye !

20bdd-v1.xlsx (42.10 Ko)

J'avais fais cela au début en effet. Mais le problème c'est que c'est de 1) long à effectuer et de 2) je ne suis pas le seul à utiliser ce tableur, donc un formulaire VBA ou liste deroulante me paraissait plus simple d'utilisation pour tout le monde.

Bonjour

avec un userForm

si ca te va tu peux faire le reste

A+

Maurice

29bdd.xlsm (57.21 Ko)

Bonjour,

Tout d'abord un grand merci pour votre aide, j'ai pu finir le travail (sachant que j'avais touché un userform et un code vba mais je m'en suis sortie).

Mais en prévision du futur, j'ai voulu rajouter une colonne référence. J'ai donc réussis à transformer en partie le code pour avoir mes listes déroulante qui fonctionne mais je ne sais pas aller plus loin...

Je voudrais maintenant sur l'userform non pas une liste déroulante, mais une zone de texte où je n'ai que à taper la ref et hop, ma ligne s'affiche. (j'ai réussi à ajouter la zone de texte sur l'userform mais je ne sais pas coder)

De plus, il me semble que mon tableau de "filtre" comportant une colonne de plus a fais bugger le code.

Si vous avez le temps de m'aider je vous en remercie beaucoup d'avance,

Cordialement

12bdd-modifie.xlsm (52.91 Ko)

Bonjour

voila une modifie

tu tape dans la partie orange et tu click sur le bouton Manuel

a oui le premier choix a faire sur la ligne 2 & tu peux faire plusieurs choix

A+

Maurice

19bdd-modifie.xlsm (62.71 Ko)

Bonjour

encore une petit modifes

A+

Maurice

16bdd-modifie.xlsm (51.87 Ko)

Bonjour à tous,

Juste pour le fun, ci-joint une de mes démo de méthode de filtrage de données.

L'interface propose une liste (à choix multiples) des colonnes pour un filtrage.

Après ce premier choix, il suffit de cocher le ou les item(s) à afficher dans ma "DataList" au dessous

Les filtres se cumulent.

Dans cette "DataList", un clic sur la petite fiche bleue à gauche ouvre la fiche.

C'est juste une démo qui fonctionne pour tout type de données quelque soit le nb de colonnes et de lignes.

On peut donc ajouter à posteriori autant de colonnes que nécessaire s'il faut faire évoluer la base.

Si vous réutilisez tout ou partie significative de mon code, merci d'en indiquer la source.

Pierre

Merci à vous d'avoir répondu,

Votre démo est vraiment sympa, mais je ne vais pas l'utiliser, je préfere rester sur ma feuille de base coder par un autre utilisateur avant vous que je trouve plus pratique.


Merci beaucoup Maurice pour votre aide qui va m'être très utile pour pouvoir retrouver mes données qui ne cesse de croître. J'aurais encore quelques idées d'amélioration qui me vienne au fur et à mesure comme pouvoir faire tous mes critères en manuel en plus du filtre mais je vais vous laisser tranquille, votre code est déjà très performant.

A bientôt

Loris

bonsoir

pour jouer une dernière

A+

Maurice

20bdd-modifie1.xlsm (60.46 Ko)

Un énorme MERCI pour votre aide, c'est exactement ce que je voulais ! Ce code va me suivre sur plusieurs base pendant longtemps je pense.

A bientôt,

Loris

Bonjour

Voila encore des modifes HI

A+

Maurice

17bdd-modifie2.xlsm (63.40 Ko)

Avec cette nouvelle modif', le filtre ville/région ne fonctionne plus... mais en revanche tout marche à merveille sur celui d'hier soir.

Si et seulement si vous voulez, peut on améliorer un de ces points ci-dessous:

Lorsqu'on effectue une recherche à 3 lignes (Amérique/Canada-Europe/Allemagne-Afrique/Tunisie), le filtre ne marche pas, il nous renvoie la BDD entière

Quand on effectue une recherche à 0 solution (ex : Amérique/France) le filtre affiche toute la base... Est-ce possible à l'inverse de rien afficher lorsque qu'aucune solution est trouvée ou bien d'avoir un message d'erreur peut importe ?

Pouvons nous créer un bouton "effacer" qui remets à 0 la feuille filtre (critères et résultats)

Ci-joint la feuille légèrement retouché modifié pour avoir le nombre de résultat trouvé

17bdd.xlsm (68.14 Ko)

Bonjour

modification de la macro

Sub FiltreElaborer()
Set Sh = Sheets(Feuil1.Name)
Set sh1 = Sheets(Feuil4.Name)
Application.ScreenUpdating = False
   Range("A7:J" & Rows.Count).Borders.LineStyle = xlNone
   Range("A7", Range("J" & Rows.Count)).Clear
Range("A1").Activate
ActiveCell.CurrentRegion.Select
Nb_lignes = Selection.Rows.Count
    Sh.Range("A1", Sh.Range("J" & Rows.Count).End(xlUp)).AdvancedFilter xlFilterInPlace, sh1.Range("A1:J" & Nb_lignes), False
    Sh.Range("A1", Sh.Range("J" & Rows.Count).End(xlUp)).SpecialCells(xlVisible).Copy
    sh1.[A6].PasteSpecial xlPasteValues
On Error Resume Next
    Sh.ShowAllData
Application.CutCopyMode = False
Application.Goto [A1], True
Nlig = Range("A" & Rows.Count).End(xlUp).Row
Range("A7:J" & Nlig).Borders.LineStyle = xlContinuous
   ActiveSheet.PageSetup.PrintArea = "$A$6:$J$" & Nlig
   ActiveSheet.PageSetup.PrintTitleRows = "$6:$6"
   ActiveWindow.DisplayGridlines = False
End Sub

en manuel tu a tous si tu a rien dans la zone orange désoler je peux pas faire mieux

A+

Maurice

Re bonsoir,

Merci pour cette modif' mais elle contient des bugs sur certaines recherche. C'est peut être simplement moi qui est mal recopié. Je vais rester sur la précédente,

A+

Loris


Je retire ce que j'ai dis, c'est effectivement moi qui est mal recopié le code, tout marche parfaitement : Merci Beaucoup !

A+

Loris

Rechercher des sujets similaires à "recherche base donnee"