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 :

Recherche efficace dans une base de donnée excel


Sujet :

Macros et VBA Excel

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 2
    Points : 2
    Points
    2
    Par défaut Recherche efficace dans une base de donnée excel
    Bonjour à tous, je travaille actuellement sur une base de donnée de gestion de matériel. mon tableau est de la forme:
    ID; MATERIEL; ETAT;DATE DEBUT;DATE FIN

    Ce tableau sera à la longue tres long.

    je souhaite connaitre l'etat d'un materiel à une date donnée.
    je selectionne mon materiel dans une combobox et la date dans un dtpicker.
    Le resultat s'affiche dans une listbox.

    Après plusieur recherche, plusieurs solutions sont possible mais laquelles est la plus rapide si j'ai plus de 20000 lignes.

    methode avec filtre automatique ?
    boucle sur toutes le lignes?
    une modification de table?

    je suis à votre écoute pour l'ecriture du code.

    Merci d'avance pour vos reponse.

  2. #2
    Membre expérimenté
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    1 563
    Détails du profil
    Informations personnelles :
    Âge : 61
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 563
    Points : 1 691
    Points
    1 691
    Par défaut
    tu peux essayer un melange de find et offset.
    a main levée bien sur
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    find(matos)
    if matos offset ( tacolonne date) = ladate alors ok
    sinon next matos

  3. #3
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Points : 15 543
    Points
    15 543
    Par défaut
    Tu devrais voir si tu peux utiliser la recherche dichotomique (par l'identifiant ?), Grrimag donne le code ici (trouvé dans la FAQ).
    Pour une explication, tu trouveras peut-être ici ton bonheur, quoi qu'elle réponde à une demande d'éclairage sur la description absconse d'un spécialiste des énigmes
    Bonne nuit

    NB - Les données doivent être triées par ordre de "grandeur" au prélable, il n'est donc pas certain que tu puisses l'utiliser

  4. #4
    Membre chevronné Avatar de wilfried_42
    Homme Profil pro
    Auto-entrepreneur
    Inscrit en
    Novembre 2006
    Messages
    1 427
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Vendée (Pays de la Loire)

    Informations professionnelles :
    Activité : Auto-entrepreneur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 427
    Points : 1 900
    Points
    1 900
    Par défaut
    Bonjour à tous

    tu as une autre possibilité, mettre à jour des cellules avec les valeurs et utiliser une formule de recherche un peu speciale

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =SOMMEPROD((materiel=critere1)*(datedeb<=critere2)*(datefin>=critere2) * ligne(materiel))
    cette formule te donera la ligne ou se trouve le materiel à la date definie
    Wilfried

Discussions similaires

  1. [XL-2010] Rechercher dans une base de données excel sur un serveur
    Par alive85 dans le forum Macros et VBA Excel
    Réponses: 9
    Dernier message: 19/12/2014, 09h02
  2. [MySQL] Recherche aléatoire dans une base de données SQL
    Par tibo894 dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 04/06/2009, 10h58
  3. Recherche approximative dans une base de données
    Par Alcide_ dans le forum Bases de données
    Réponses: 2
    Dernier message: 09/07/2008, 18h00
  4. recherche en VBA dans une base de donnée excel
    Par INCO13 dans le forum Macros et VBA Excel
    Réponses: 13
    Dernier message: 24/06/2008, 13h58
  5. Recherche croisé dans une base de donnée
    Par elephant13 dans le forum C#
    Réponses: 1
    Dernier message: 24/03/2007, 15h26

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