IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Formulaire de recherche "multi-critères conditionnels" un peu costaud.


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Ressources humaines
    Inscrit en
    Mai 2020
    Messages
    150
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ressources humaines
    Secteur : Enseignement

    Informations forums :
    Inscription : Mai 2020
    Messages : 150
    Par défaut Formulaire de recherche "multi-critères conditionnels" un peu costaud.
    Bonjour à toutes et à tous,

    Je bricole (avec des pansements à tous les doigts, même de pied, et un bandage autour de la tête) un tout petit peu en vba, et donc là je dis : au secours.
    J'ai un form de 52 champs, visualisant 52 des 75 colonnes d'une base Excel de 15.000 lignes (en croissance de 5.000/an), affichant quelques butons lançant des manips ultra simples.

    Je rêve depuis toujours de disposer d'un autre form, dédié à la recherche et l'extraction (un filtrage de la base conviendrait très bien, car par définition peu de résultats à chaque recherche) , multi-critères et dépendants, "à deux niveaux" de dépendance: le premier niveau de dépendance extrêmement basique : ex. je recherche des entreprises dans certains départements, donc certaines villes possibles, exerçant un certain type d'activité, et dont l'effectif est supérieur à X (combo avec des fourchettes d'effectifs), etc. : donc ici on peut avoir 10 critères/colonnes concernées maximum, et le deuxième niveau lui concerne spécifiquement 6 de ces 10 critères : 4 colonnes/combos recensant 4 niveaux de description d'activité (ex. Industrie, Métallurgie, Traitement de surfaces, Aéronautique), et 2 dédiées au codes postaux et villes.

    J'ai donc bien sûr des problèmes de chargement des comboboxes (de la base ; ne se fait pas sur certains champs, ne gère pas les cellules vides ni les doublons, etc.) ; et pour relier les 4 niveaux de descriptions d'activité, même si j'ai les 4 listes pour les combos ( que je dois pouvoir alimenter).
    Je pensais que ce serait galère, mais c'est bien plus, pour qqun qui ne parle pas nativement VBA : et pourtant il me faut ce truc ! 😆

    Ayant, à plusieurs reprises, pû constater la générosité exceptionnelle de certains acteurs de cette plate-forme qui, secret de polichinelle, est certainement l'une des meilleures du web, j'ai l'impression que ça prendrait quand même un peu de temps, même à un ténor ; je pourrais peut-être l'indemniser, même si je ne suis pas Crésus et si j'ai bien compris que ce n'était pas l'objet ici ?

    Aloha He à toutes et tous !
    MJ

  2. #2
    Membre Expert Avatar de Thumb down
    Homme Profil pro
    Retraité
    Inscrit en
    Juin 2019
    Messages
    1 575
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Juin 2019
    Messages : 1 575
    Par défaut
    Bonjour,
    À l'énoncé du profil du poste, je ne propose pas ma candidature !

  3. #3
    Membre confirmé
    Homme Profil pro
    Ressources humaines
    Inscrit en
    Mai 2020
    Messages
    150
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ressources humaines
    Secteur : Enseignement

    Informations forums :
    Inscription : Mai 2020
    Messages : 150
    Par défaut
    Citation Envoyé par Thumb down Voir le message
    Bonjour,
    À l'énoncé du profil du poste, je ne propose pas ma candidature !
    Heureusement, car visiblement petit problème de compréhension, voir de lecture.

  4. #4
    Expert confirmé
    Avatar de jurassic pork
    Homme Profil pro
    Bidouilleur
    Inscrit en
    Décembre 2008
    Messages
    4 244
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Bidouilleur
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2008
    Messages : 4 244
    Par défaut
    Hello,
    Citation Envoyé par MarcJinger Voir le message
    J'ai un form de 52 champs, visualisant 52 des 75 colonnes d'une base Excel
    C'est à dire ? tu utilises quels contrôles ? une listview ?

    Citation Envoyé par MarcJinger Voir le message
    Je rêve depuis toujours de disposer d'un autre form, dédié à la recherche et l'extraction (un filtrage de la base conviendrait très bien, car par définition peu de résultats à chaque recherche) , multi-critères et dépendants, "à deux niveaux" de dépendance: le premier niveau de dépendance extrêmement basique : ex. je recherche des entreprises dans certains départements, donc certaines villes possibles, exerçant un certain type d'activité, et dont l'effectif est supérieur à X (combo avec des fourchettes d'effectifs), etc. : donc ici on peut avoir 10 critères/colonnes concernées maximum, et le deuxième niveau lui concerne spécifiquement 6 de ces 10 critères : 4 colonnes/combos recensant 4 niveaux de description d'activité (ex. Industrie, Métallurgie, Traitement de surfaces, Aéronautique), et 2 dédiées au codes postaux et villes.
    Montre-nous à quoi tu veux que ça ressemble.

    Et pourquoi tu n'utilses pas le filtrage sur ta feuille si ton tableau est structuré avec une zone de critères ? Pourquoi un Formulaire ?

    Ami calmant, J.P

  5. #5
    Membre émérite
    Homme Profil pro
    Développeur .net - Office - Quadiant
    Inscrit en
    Février 2020
    Messages
    633
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loir et Cher (Centre)

    Informations professionnelles :
    Activité : Développeur .net - Office - Quadiant
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Février 2020
    Messages : 633
    Par défaut
    Bonjour,

    Vu la description et l'évolution mon avis n'est pas d'utiliser Excel mais une base de données comme Access.

    Avis personnel bien sûr.

    ONTAYG

  6. #6
    Membre confirmé
    Homme Profil pro
    Ressources humaines
    Inscrit en
    Mai 2020
    Messages
    150
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ressources humaines
    Secteur : Enseignement

    Informations forums :
    Inscription : Mai 2020
    Messages : 150
    Par défaut
    Citation Envoyé par jurassic pork Voir le message
    Hello,

    C'est à dire ? tu utilises quels contrôles ? une listview ?


    Montre-nous à quoi tu veux que ça ressemble.

    Et pourquoi tu n'utilses pas le filtrage sur ta feuille si ton tableau est structuré avec une zone de critères ? Pourquoi un Formulaire ?

    Ami calmant, J.P
    Nom : FormRechercheBG.JPG
Affichages : 128
Taille : 43,2 Ko

    Bonsoir et merci pour ton aide.
    Mon fichier contient 72 colonnes, d'où ce formulaire.
    Je n'utilise presque que des combobox tapant dans des listes en feuille2 que je peux mettre à jour/alimenter (le top étant évidemment de pouvoir les alimenter en tapant direct les nouveaux items dans le champ vide de la combo concernée). Ci- dessus le mini-form donc.
    Le problème est que mes comboboxes ne se chargent pas vs. leurs listes respectives, et donc pas possible de faire de recherche : bref à revoir depuis la base certainement.
    Merci !

  7. #7
    Expert confirmé
    Avatar de jurassic pork
    Homme Profil pro
    Bidouilleur
    Inscrit en
    Décembre 2008
    Messages
    4 244
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Bidouilleur
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2008
    Messages : 4 244
    Par défaut
    Hello,
    je ne vois toujours pas l'intérêt d'utiliser un formulaire plutôt que les filtres d'un tableau structuré pour faire une recherche. Les Filtres automatiques proposent des options intéressantes (filtres numériques pour les nombres, filtres textuels pour le texte, filtres chronologiques pour les dates)
    Voici un exemple avec une feuille qui contient un tableau structuré de 27 colonnes et 170000 lignes (entreprises).
    Trois macros permettent de :
    1 - N'afficher que les colonnes sur lesquelles on veut faire un filtre
    2 - Afficher toutes les colonnes du tableau
    3 - Supprimer les filtres automatiques
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    Sub MasquerColonnes()
       Range("a:z").EntireColumn.Hidden = True
       Range("a:a,c:c,d:d,g:g,h:h,t:t").EntireColumn.Hidden = False
       Range("A1").Select
    End Sub
     
    Sub AfficherColonnes()
       Range("a:z").EntireColumn.Hidden = False
    End Sub
     
    Sub EffacerFiltreTableau()
      Dim fc As Worksheet, sTableau As String, loTableau As ListObject
      sTableau = "Tableau1"
      Set fc = ActiveSheet
      Set loTableau = fc.ListObjects(sTableau)
      loTableau.AutoFilter.ShowAllData
    End Sub
    Nom : Filtre.gif
Affichages : 119
Taille : 395,9 Ko

    Ami calmant, J.P

  8. #8
    Membre confirmé
    Homme Profil pro
    Ressources humaines
    Inscrit en
    Mai 2020
    Messages
    150
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ressources humaines
    Secteur : Enseignement

    Informations forums :
    Inscription : Mai 2020
    Messages : 150
    Par défaut
    [QUOTE=jurassic pork;11971571]Hello,
    je ne vois toujours pas l'intérêt d'utiliser un formulaire plutôt que les filtres d'un tableau structuré pour faire une recherche. Les Filtres automatiques proposent des options intéressantes (filtres numériques pour les nombres, filtres textuels pour le texte, filtres chronologiques pour les dates)
    Voici un exemple avec une feuille ----

    Bonjour JP, et merci pour ton temps et ta réponse.

    En fait je suis allergique aux tableaux structurés ; pour la faire courte je manipule trop mes bases. Je n'aime pas non plus passer par les filtres : trop rigides, manip trop limitée et fastidieuse, je suis trop paresseux pour dérouler et choisir chaque champ et ils sont souvent capricieux (à sélectionner/déselectionner/resélectionner pour un oui ou pour un non).
    D'après ma très modeste expérience (en VBA, pas en manip de bases) les forms permettent d'embarquer toutes commandes non liées au simple fait de filtrer et donc de réunir dans la même fenêtre de la façon la plus compacte beaucoup d'éléments, limitant largement le swap entre fenêtres/applis etc. Evidemment ces commandes permettant de lancer de façon partielles ou pas toutes actions de filtrages et d'édition "à la volée" bref tout ce que peut faire une macro avec souplesse (hum, quand on maitrise...).

    Donc voilà pourquoi je cherche à pouvoir utiliser ce petit form de recherche, dont 4 et 2 champs sont conditionnels (il y a qq tutos, mais foireux...) : Domaine=>Activité=>Secteur=>Spécialité et CP=>Ville. Si je ne remplis qu'un seul des 11 champs il sélectionne ce qu'il trouve.
    Le petit form un peu mortel : la moindre bouffonade et c'est mort. Donc plutôt que d'y passer un temps de fou parceque j'ai attaqué VBA par le coté (le grand grand classique), je pose la question à ceux qui maitrise vraiment - le temps que je me tape de repartir des fondamentaux...

    Bah, on va bien finir par y arriver, 'faut pas déconner !!

    BONNE JOURNEE, MERCI, ET JE SUIS SUPER A L'ECOUTE CAR CA SAOULE

Discussions similaires

  1. [AC-365] ouvrir un formulaire avec recherche de 2 critères
    Par squadracorsa dans le forum IHM
    Réponses: 3
    Dernier message: 03/08/2020, 17h17
  2. [AC-2010] Recherche Minimum multi critère et renvoi dans la base
    Par LBE41 dans le forum Access
    Réponses: 2
    Dernier message: 02/10/2014, 10h22
  3. [XL-2007] recherche valeur multi critère
    Par maximilien59 dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 15/04/2014, 12h24
  4. Formulaire de recherche multi-critère
    Par Bolton8ox dans le forum Access
    Réponses: 1
    Dernier message: 24/07/2006, 19h40
  5. Réponses: 6
    Dernier message: 28/06/2006, 15h01

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo