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 :

Création recherche excel


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Technicien auto
    Inscrit en
    Novembre 2011
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vendée (Pays de la Loire)

    Informations professionnelles :
    Activité : Technicien auto

    Informations forums :
    Inscription : Novembre 2011
    Messages : 22
    Par défaut Création recherche excel
    Bonjour à tous. Je vous explique mon problème.

    Je suis dans l'automobile et je gère l'outillage spécifique. Aujourd'hui, la liste d'outillage est un simple fichier excel (je vous ai mis un exemple en pièce jointe. Le vrai fichier à un peu plus de 700 lignes).

    Aujourd'hui je souhaite créer un logiciel jovial.

    J'ai beaucoup de connaissance en informatique par passion mais beaucoup moins en programmation.

    Dans le fichier excel joint, j'ai créé dans le VB intégré, des Windows form pour expliquer mon projet.


    En gros :

    la fenêtre1, serait la première, un choix de recherche.
    la fenêtre2, serait si la première case de la fenetre1 aurais été coché.
    la fenêtre3, serait si la deuxième case de la fenetre1 aurais été coché.
    la fenêtre4, serait si au cour de l'appuie sur le bouton "recherche" de la fenetre 2 ou 3 il n'y aurait pas de correspondance trouvé.
    la fenêtre5, serait le résultat afficher après avoir appuyer sur le bouton recherche des fenêtre 2 ou 3.


    J'ai lu un peu l'excellent cour vb.net : http://plasserre.developpez.com/cours/vb-net/
    mais je ne sais pas ce qui correspond à ce qu'il faut que je fasse.

    Pouvez vous m'aider à créer ce projet tout en m'expliquant ce qui doit etre fait car j'aime apprendre, et cela pourra surement me resservir. Je pense que c'est plus simple qu'avec un fichier tout fait.

    Je connais quelque fonction VB que j'ai d'ailleur fait sur le fichier excel pour essayer.

    Ce que je ne sait pas faire en faite c'est par exemple pour la fenetre1 quelque chose du genre : if case 1 cocher alors then clic sur valider, ouvrir fenetre2....

    creer des règle de recherche

    afficher le resultat d'une recherche dans une autre fenetre.


    Je reste à votre disposition si vous avez des questions. N'hésitez pas à m'explique les codes si cela ne vous ennuie pas.

    J'utilise Excel 2003, le VB intégré 6.3, Microsoft Visual studio 2010, Access 2003.

    Je vous remercie par avance de l'aide que vous m'apporterer.

    Cordialement Sébastien GILLOT
    Fichiers attachés Fichiers attachés

  2. #2
    Membre Expert Avatar de hunteshiva
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Février 2010
    Messages
    1 069
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Chef de projet en SSII
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2010
    Messages : 1 069
    Par défaut
    Bonjour,

    Ton projet n'est pas du tout du vb.net, mais du VBA/VB6.... *tu risque de ne pas avoir beaucoup de réponses ici*
    au mieux un moderateur va déplacer ton sujet dans le bon forum de developpez

    Le cours de P.Lasserre est éfféctivement un trés bon cour mais pour du vb.net *pas du VBA *
    pour ton exemple de changement de fenetre tu peux commencer par ceci:
    *attention ce code ne gére pas tout, si deux cases sont cochée... comment faire...?*
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Private Sub CommandButton1_Click()
        If (CheckBox1.Value = True) Then
            Me.Hide
            fenetre2.Show
        ElseIf (CheckBox2.Value = True) Then
            Me.Hide
            fenetre3.Show
        Else
            MsgBox ("Aucun choix n'a était saisi")
        End If
    End Sub
    PS: Tu devrai utiliser des "RadioButton"


    après je te laisser cherche un peu
    balayer ton fichier Excel devrait être enrichissant
    -------------------------------------------------------------------------------------

    pour te donner d'autres idées,
    tu peut également gérer les événement de tous les objets de ton form comme ceci :



    encadré en rouge sont tous les événements de la CheckBox1
    Aprés je te laisse voir a quoi ils servent sur le Web

    *Enjoy*

  3. #3
    Membre averti
    Homme Profil pro
    Technicien auto
    Inscrit en
    Novembre 2011
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vendée (Pays de la Loire)

    Informations professionnelles :
    Activité : Technicien auto

    Informations forums :
    Inscription : Novembre 2011
    Messages : 22
    Par défaut
    Bonjour,

    Ça y'est le message a été déplacé.

    Merci pour ce début. C'est une connaissance en plus.

    Je regarderais plus en détail toute votre réponse ce soir. Je vais continuer à explorer toute la feuille excel et les possibilité de VB.

    Merci déjà.

    Cdlmnt

    J'ai commencé à mettre un peu de code notament celui proposé par hunteshiva et un peu d'autre. J'ai mis mon fichier en pièce jointe. Finalement il y'a un peu plus de 700 lignes. Il y'en à 1556.

    Une chose qui me manque vraiment c'est le code pour que mon bouton "recherche" des WinForm 2 et 3 soit actif.

    Je recherche actuellement, comment faire pour que si je rentre dans la WinForm 2 par exemple le numéro d'outil T10200, et que je clic sur rechercher,

    la fenêtre2 se ferme,
    la fenêtre5 s'ouvre et les champs vides sont remplient par les données correspondantes à ma recherche.



    Merci encore pour votre aide.


    ps : aucune mise en forme n'a été faite.

    Cdlmnt
    Fichiers attachés Fichiers attachés

  4. #4
    Membre expérimenté
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    226
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Avril 2008
    Messages : 226
    Par défaut
    Hello,

    J'avais bidouillé ton fichier, vois le retour je pense que c'est ce que tu veux.

    La fenetre4 ne te sert à rien dans ce cas.

    Si je peux te donner un conseil, c'est de bien nommer les divers contrôles que tu mets dans tes formulaires (quoiqu'avec des boucles...) tu t'y retrouveras plus facilement.

    Essaie de bien analyser le code. Si besoin n'hésite pas.
    Fichiers attachés Fichiers attachés

  5. #5
    Membre averti
    Homme Profil pro
    Technicien auto
    Inscrit en
    Novembre 2011
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vendée (Pays de la Loire)

    Informations professionnelles :
    Activité : Technicien auto

    Informations forums :
    Inscription : Novembre 2011
    Messages : 22
    Par défaut
    Bonjour,

    J'ai regardé ce travail et il me semble parfait.

    J'ai remarqué que dans un ComboBox, ont pouvait écrire du texte, la fenêtre 1 et 3 ne servent donc plus. Je les aient enlevés.

    J'ai plusieurs petites questions.

    Sur ce code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Private Sub UserForm_Initialize()
     
        With Sheets("Feuil1")
            For n = 4 To .Range("A1000").End(xlUp).Row
                ComboNumOutil.AddItem .Cells(n, 1).Value
            Next n
        End With
     
    End Sub
    Je voulais savoir quel est la fonction de "n = 4" ?
    Est ce que ce code permet de ne rien inscrire dans la fenêtre de propriété "RowSource" ?

    Et il y'a ce bout de code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Range("A" & n & ":G" & n).Interior.ColorIndex = 3
    que je ne comprend pas non plus.

    Merci encore. Demain j'essai de mettre en place ce code sur mon fichier originale avec mes 5000 et quelques lignes et je le posterais avant de faire la mise en forme des fenêtres. Merci encore.

  6. #6
    Membre Expert
    Homme Profil pro
    Retraité
    Inscrit en
    Avril 2011
    Messages
    1 858
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Avril 2011
    Messages : 1 858
    Par défaut
    Bonjour,

    Quelle est la fonction de "n = 4" ?
    Est ce que ce code permet de ne rien inscrire dans la fenêtre de propriété "RowSource" ?
    Le code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Sheets("Feuil1").Range("A1000").End(xlUp).Row
    retourne le numéro de la dernière ligne renseignée dans la colonne A de la feuille « Feuil1 », c'est-à-dire 11 dans ce cas.
    La boucle FOR-NEXT balaye la colonne A de la ligne n=4 à la ligne n=11 et permet de remplir la ComboBox avec les 8 valeurs de la plage A4:A11. Ce remplissage est effectué avec la méthode AddItem. La propriété RowSource aurait pu également être utilisée pour remplir la ComboBox.
    il y'a ce bout de code "Range("A" & n & ":G" & n).Interior.ColorIndex = 3" que je ne comprend pas
    La propriété interior.Colorindex définit la valeur qui représente la couleur de l'intérieur de la cellule.
    Avec n=4 par exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Range("A4:G4").interior.Colorindex=3
    se traduit par « les cellules de la plage A4:G4 sont remplies avec la couleur rouge »

    Cordialement.

Discussions similaires

  1. créer un moteur de recherche excel
    Par bastos77 dans le forum Macros et VBA Excel
    Réponses: 10
    Dernier message: 21/06/2011, 16h39
  2. Exemple création feuille Excel avec mise en page
    Par celiaaa dans le forum VBA Access
    Réponses: 1
    Dernier message: 09/07/2007, 12h30
  3. Création fichier excel retourné dans le navigateur
    Par progamer54 dans le forum JSF
    Réponses: 4
    Dernier message: 27/03/2007, 11h50
  4. [VBA-E]Création fichier EXCEL et détection cellule vide
    Par benoue dans le forum Macros et VBA Excel
    Réponses: 18
    Dernier message: 24/02/2006, 17h22
  5. création graphique excel à partir VB6
    Par getea85 dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 06/10/2005, 14h59

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