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 :

[E-07] - Faire une recherche sur Developpez directement depuis le Ruban


Sujet :

Macros et VBA Excel

  1. #1
    Membre éprouvé
    Avatar de fred65200
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    901
    Détails du profil
    Informations personnelles :
    Âge : 57
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 901
    Points : 1 207
    Points
    1 207
    Par défaut [E-07] - Faire une recherche sur Developpez directement depuis le Ruban
    Bonjour,
    Je me suis créé un nouvel onglet sur Excel pour effectuer des recherches directement sur ce site.



    Il suffit de saisir les mots recherchés dans une EditBox
    En sortant, une fenêtre IE s'ouvre, les identifiant et mot de passe sont saisis, la recherche s'effectue et le résultat s'affiche.

    Le code de recherche
    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
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    '---------------------------------------------------------------------------------------
    ' Module      : modRechercheSurDeveloppez
    ' Auteur      : fred65200 - Frédéric CHAPIN - http://www.developpez.net/forums/f542/hardware-systemes-logiciels/microsoft-office/excel/
    ' Date        : 27/02/2009
    ' Description : Faire une recherche sur Developpez
    '               S'dentifier, lancer la recherche, afficher le résultat en un clic
    '---------------------------------------------------------------------------------------
    '   Nécessite d'activer la référence "Microsoft Internet Controls"
    '---------------------------------------------------------------------------------------
    '               Sur Excel 2007, saisie directe dans un EditBox dans le ruban
     
    Option Explicit
    Public strQuery As String
     
    Const Identifiant As String = "fred65200"
    Const MdP As String = "************"
    Const Forum As String = "542"      ' -->  Excel et forums enfants
     
    Sub RechercheSurDeveloppez()
    Dim IE As Object  'InternetExplorer
    Dim Helem As Object 'IHTMLElement
    Dim MaPageHtml As Object 'HTMLDocument
     
    strQuery = Application.Trim(strQuery)
    If InStr(1, strQuery, " ") > 0 Then strQuery = Replace(strQuery, " ", "+")
     
    Set IE = CreateObject("InternetExplorer.Application")
        IE.Visible = True
        IE.Navigate ("http://www.developpez.net/forums/search.php")
        'on attend que la page soit actualisée
        Do Until IE.ReadyState = 4
            DoEvents
        Loop
        Set MaPageHtml = IE.Document
        'Saisie de l'identifiant
        Set Helem = MaPageHtml.getElementsByName("vb_login_username").Item
        If Helem Is Nothing Then GoTo suite 'déjà logué
        Helem.Value = Identifiant
        'Saisie du mot de passe
        Set Helem = MaPageHtml.getElementsByName("vb_login_password").Item
        Helem.Value = MdP
        'Validation
        Set Helem = MaPageHtml.Forms(0)
        Helem.submit 'Click
     
    suite:
    Do While IE.Busy
        DoEvents
    Loop
     
    IE.Navigate "http://www.developpez.net/forums/search.php?query=" & _
        strQuery & _
        "&exactname=0&starteronly=0" & "&forumchoice[]=" & _
        Forum & _
        "&prefixchoice[]=&childforums=1" & _
        "&titleonly=0&showposts=0&searchdate=0&beforeafter=after&sortby=lastpost" & _
        "&sortorder=descending&replyless=0&replylimit=0&searchthreadid=0&saveprefs=0" & _
        "&quicksearch=0&searchtype=0&nocache=0&ajax=0&userid=0"
     
        Do Until IE.ReadyState = 4
            DoEvents
        Loop
        'Clic sur Effectuer la recherche
        Set Helem = MaPageHtml.getElementsByName("dosearch").Item
        Helem.Click
     
    Set MaPageHtml = Nothing
    Set Helem = Nothing
    Set IE = Nothing
    If Not monRuban Is Nothing Then monRuban.InvalidateControl ("ebx1")
    End Sub
    Le code du Ruban
    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
    Option Explicit
     
    Public monRuban As IRibbonUI
    Public boolEditBox As Boolean
     
    'Callback for customUI.onLoad
    Sub OnRibbonLoad(ribbon As IRibbonUI)
        Set monRuban = ribbon
    End Sub
     
    'Callback for ebx1 getText
    Sub GetTextEditBox(control As IRibbonControl, ByRef strText)
        boolEditBox = False
        strText = "Recherche sur Developpez.net..."
    End Sub
     
    'Callback for ebx1 onChange
    Sub OnChangeEditBox(control As IRibbonControl, monTexte As String)
    If monTexte = "" Then Exit Sub
        strQuery = monTexte
        boolEditBox = True
        RechercheSurDeveloppez
     
    If Not monRuban Is Nothing Then monRuban.InvalidateControl ("ebx1")
     
    End Sub
    et enfin le code xml
    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
    <customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui" onLoad="OnRibbonLoad">
        <ribbon startFromScratch="false">
            <tabs>
                <tab id="tabRecherche" label="Recherche" keytip = "D">
                    <group id="grpDeveloppez" label="Developpez">
                        <editBox id="ebx1"
                            sizeString="Rechercher sur Developpez.net..."
                            image="Dev"
                            label="Rechercher sur Developpez.net"
                            showLabel="false"
                            showImage="true"
                            screentip="Mots-clef(s):"
                            getText="GetTextEditBox"
                            onChange="OnChangeEditBox" 
                            maxLength="200"
                            keytip="M"
                        />
                    </group>
                </tab>
            </tabs>
        </ribbon>
    </customUI>
    Il est possible d'effectuer des recherches sur d'autres forum en modifiant la valeur de Forum

    L'image Dev pour être complet



    Cordialement

  2. #2
    Modérateur
    Avatar de AlainTech
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Mai 2005
    Messages
    4 235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Finance

    Informations forums :
    Inscription : Mai 2005
    Messages : 4 235
    Points : 24 327
    Points
    24 327
    Par défaut
    Ca ne serait pas mieux dans "Contribuez"?
    N'oubliez pas de cliquer sur quand vous avez obtenu ou trouvé vous-même la réponse à votre question.
    Si vous trouvez seul, pensez à poster votre solution. Elle peut servir à d'autres!
    Pensez aussi à voter pour les réponses qui vous ont aidés.
    ------------
    Je dois beaucoup de mes connaissances à mes erreurs!

  3. #3
    Membre émérite Avatar de Godzestla
    Homme Profil pro
    Chercheur de bonheur
    Inscrit en
    Août 2007
    Messages
    2 392
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chercheur de bonheur
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2007
    Messages : 2 392
    Points : 2 985
    Points
    2 985
    Par défaut
    Fred,
    Voilà une idée fantastique.

    Puis-je risquer de tourner le code sur 2003 où n'est-ce pas compatible ?
    (\ _ /) Cordialement G@dz
    (='.'=)

    (")-(") Vous avez des neurones. Sollicitez-les. . Si vous êtes aidé, pensez à Voter.

Discussions similaires

  1. faire une recherche sur la colonne d'une liste annuaire
    Par gracouille dans le forum SharePoint
    Réponses: 1
    Dernier message: 13/10/2008, 17h06
  2. Réponses: 3
    Dernier message: 11/10/2008, 13h32
  3. Comment faire une recherche sur un contenu s'il existe ou non ?
    Par 21247692 dans le forum Bases de données
    Réponses: 8
    Dernier message: 05/04/2008, 10h54
  4. Réponses: 19
    Dernier message: 12/04/2007, 15h11
  5. faire une recherche sur des "
    Par richard038 dans le forum Requêtes
    Réponses: 6
    Dernier message: 24/07/2006, 22h30

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