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


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau candidat au Club
    Inscrit en
    Juin 2007
    Messages
    1
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 1
    Par défaut Formulaire de recherche
    Bonjour à tous et toutes live from Montreal...


    Je vous explique mon souci… Je me prends la tête depuis 1 semaine pour trouver un moyen simple de faire une recherche dans excel. J’ai écumé de nombreux post sur les différents forums etc… mais aucune réponse ne correspond véritablement à mes attentes. Je vais tenter de vous expliquer le contexte


    Je travaille depuis peu dans un secteur banquier, dans une petite équipe composée principalement de personnes complètement novices en informatiques (J’ai appris le ctrl+c, ctrl+v à l’un d’entre eux cette semaine :p ).

    J’ai à ma disposition que Excel à mon grand regret, car j’aurai su, je pense, faire ce que je veux avec une bas sql et un formulaire php etc…. bref…<

    Mon fichier Excel se compose comme ceci :


    2 feuilles.

    Feuille1 : Tableau de 6 colonnes par 1000 lignes environ, comprenant Nom de la banque, Pays, X,Y,Z,W. (X,Y,X,W comprenant des commentaires spécifiques à la banque).

    Feuille2 : Tableau de 5 colonnes par 500 lignes environ. Le point important est que dans ce tableau, 1 des 5 colonnes est également Nom de la banque. En fait, cette feuille traite de renseignements plus approfondis concernant certaines banques qui se trouvent donc également dans la feuille1.

    Je ne sais pas si toute cette description est utile, en tout cas je préfère en dire + que pas assez .

    Voilà en clair ce que j’aimerai faire dans ce fichier de façon à rendre la vie la plus facile possible à mes collègues, histoire de mériter une promotion quoi ,) :

    Je veux insérer une page qui fera office de sommaire, avec un blabla explicatif du contenu etc….. et sur ce sommaire je voudrais une inputbox qui fera office de formulaire de recherche. Je voudrais que, sur cette même page, s’affiche en dessous de l’input box, dans un tableau ou non je m’en moque, les résultats de la recherche avec un lien direct vers le résultat.

    Exemple : je tape ‘Caisse’ dans ma recherche, j’appui sur mon bouton ‘Recherche’, et en dessous les résultats s’affichent :


    caisse RECHERCHER


    Banque Ou? Action

    Caisse d’épargne Feuille 1 OK
    Caisse d’épargne Feuille 2 OK
    Caisse d’Assurance Feuille 1 OK
    Société d’encaissement Feuille 1 OK


    Le OK étant le lien vers la cellule correspondante.




    Voilà, je sais que ça a l’air compliqué et que je demande beaucoup, mais le fait de vous l’avoir expliqué me fait encore plus réfléchir et qui sait ? je trouverai peut être tout seul du coup lol, si c’est le cas je vous donnerai la solution mais j’en doute fort alors svp aidez moi !!!

    Bonne journée ou bonne soirée .

    Birone

  2. #2
    Membre Expert

    Homme Profil pro
    Technicien Métrologie R&D
    Inscrit en
    Janvier 2007
    Messages
    1 610
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien Métrologie R&D
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 610
    Billets dans le blog
    1
    Par défaut
    Salut
    je pense que les banques ont toutes un N° d'agence différent (ce qui me paraitrait logique)
    dans le style :
    AN-USA-00955 'amerique du nord état unis etc etc..
    le code doit être le même sur chaque feuille (là encore ce serait logique)
    et chaque ligne comporte donc un numéro unique
    action un trier les tableau par code banque (colonne A:A)
    nommé les tableaux feuille 2 insertion nom définir tablo1 fait référence à =feuil2!$A$1$F$1500
    feuille 3 insertion nom définir tablo2 fait référence à =feuil3!$A$1$E$600
    feuille 2 insertion nom définir Banque fait référence à =feuil2!$A$1$A$1500
    ce dernier pour un liste déroulante (quoique 1000 nom c'est longuet)
    il te suffit après dans la première feuille tu peut te servir des nom et de la fonction recherchev(C4;tablo1;n°colonne;faux)
    pour pointer les lignes fiches places deux boutons sur la feuille 1
    auxquelles tu associes les macros suivantes:
    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
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
     
    Sub bouton1()
    Dim motcle As Variant
     With Sheets(2)
    If .Range("B2").Value = "" Then
    MsgBox ("La liste est vide")
    End
    Else
    fin = .Range("A1").End(xlDown).Row
    liste = "a2:a" & fin
    End If
    End With
    With Sheets(1)
    motcle = .Range("C4").Value
    If motcle = "" Then
    MsgBox ("Aucun mot clé n'a été donné")
    End
    End If
    End With
    With Sheets(2).Range(liste)
    Set c = .Find(motcle, LookIn:=xlValues)
    If Not c Is Nothing Then
    first = c.Row
    End If
    End With
    Sheets(2).Select
    Cells(first, 1).Select
    End Sub
    Sub bouton2()
    Dim motcle As Variant
    With Sheets(3)
    If .Range("B2").Value = "" Then
    MsgBox ("La liste est vide")
    End
    Else
    fin = .Range("A1").End(xlDown).Row
    liste = "a2:a" & fin
    End If
    End With
    With Sheets(1)
    motcle = .Range("C4").Value
    If motcle = "" Then
    MsgBox ("Aucun mot clé n'a été donné")
    End
    End If
    End With
    With Sheets(3).Range(liste)
    Set c = .Find(motcle, LookIn:=xlValues)
    If Not c Is Nothing Then
    first = c.Row
    Else
    MsgBox "Valeur non renseignées "
    End
    End If
    End With
    Sheets(3).Select
    Cells(first, 1).Select
    End Sub
    Normalement ça devrait le faire
    Cordialement
    Daranc

Discussions similaires

  1. Formulaire de recherche multitables
    Par SpyesX dans le forum Access
    Réponses: 7
    Dernier message: 24/11/2005, 11h50
  2. [MySQL] Formulaire de recherche PHP + un script d recherche en HTML
    Par Dsphinx dans le forum PHP & Base de données
    Réponses: 6
    Dernier message: 09/11/2005, 19h44
  3. alléger un formulaire de recherche
    Par jarod71 dans le forum Langage
    Réponses: 4
    Dernier message: 28/10/2005, 11h11
  4. Réponses: 3
    Dernier message: 20/10/2005, 12h42
  5. Réponses: 5
    Dernier message: 18/10/2005, 14h09

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