Problème sur access avec une textboc

Bonjour,

Je suis dans la création d'une base de donnée, j'essaye d'incorporer dans mon formulaire une recherche par mots clefs. (via une txtbox). Donc en mettant un mot ou un debut de mot et en tapant sur entrée, le résultat de ma recherche devrait apparaître dans une zone de résultat.

Bref j'ai besoin d'aide, tout aide sera donc la bienvenue.
Configuration: Windows XP
Internet Explorer 6.0

43 réponses

Résumé de la discussion

La problématique porte sur l’implémentation d’une recherche par mots-clefs dans un formulaire Access, avec les résultats affichés dans une zone dédiée. Les réponses préconisent que le formulaire des résultats soit alimenté par la bonne table et que les contrôles correspondent aux champs, afin de pouvoir appliquer un critère de filtrage issus de la saisie. Une solution pratique consiste à gérer l’événement IstResults_DblClick en définissant Critere = "TITRE" & "='" & Me.IstResults & "'" puis DoCmd.OpenForm "Formulairedesaisie", acNormal, , Critere. Une autre piste évoque l’utilisation d’un champ de type lien hypertexte pour référencer des documents et les exploiter via le formulaire.

Bobot (l’IA à votre service)
  1. Bonjour Mickael,
    Alors là je ne peux plus vous aider sans avoir le matériel à disposition.
    Il me semble quand même que celà provient du logiciel qui supporte le PDF, contrôlez le à défaut le réinstallé....
    Essayer d'autre document en pdf pour voir se qui se passe.
    Bon vent.
    0
    1. Bonjour Mickael,
      Essayez d'ouvrir le fichier pdf en créant le lien sur un document excel pour voir si le problème est le même.
      Je pense que vous avez assi essayer en direct ....
      0
      1. Bonjour,

        En effet même sur excel les pdf ne s'ouvrent pas. En changeant le chemin aussi ils ne s'ouvrent pas.
        Quelle en est la raison, je peux pas le dire. Si vous avez une idée ? ...
        0
      2. @Mickael1461re,
        De plus j ai essayé de lié d autres types de fichier et ca marche (site, excel, word)
        0
    2. Bonjour Mickael,
      A la suite de test avec pdf à divers endroits tout fonctionne chez moi.
      Quel message vous recevez avec l'ouverture de *.pdf ... ?
      0
      1. Re,

        Je n'est pas de message la fenêtre pdf apparait une seconde voir moins et plus rien.
        0
    3. Bonjour,
      Sympathique les fichier avec mot de passe...
      En attendant, que je trouve le "mdp", êtes-vous certain du chemin vers le document *.pdf ....? ?
      0
      1. Re ah oui désolé. je vous envoi le mot de passe en MP.
        En ce qui concerne le chemin y a pas de soucis car des fichiers excel étant dans le même fichier s'ouvrent.
        0
    4. Bonjour,

      Pour : mais si je met un pdf en lien mettre un exemple.
      0
      1. RE,

        http://www.cijoint.fr/cjlink.php?file=cj200905/cijVJk4njC.zip

        Les fichiers PDf sont stockés dans un dossier sur le réseau du service ou je travail.
        0
    5. Bonjour,
      L'exemple : http://www.cijoint.fr/cjlink.php?file=cj200905/cij5r05jlS.zip
      0
      1. Bonjour,

        Merci pour les liaisons, mais si je met un pdf en lien il veut pas l'ouvrir bizarre puisque les sites internet il les ouvres.
        0
    6. Bonjour Mickael,
      Eh bien oui j'avais déjà réalisé la correction sur version antérieur.
      La procédure est la suivante (à vous de la remplacer):
      Private Sub IstResults_DblClick(Cancel As Integer)
      Critere = "REFERENCE" & "= """ & Me.IstResults & """"
      DoCmd.OpenForm "Formulairedesaisie", acNormal, , Critere
      End Sub
      0
      1. Bonjour,
        Non, vous devez ajouter un champ à votre table avec type de données "Lien hypertexte" et il va de soi que vous devez entrer pour chaque enregistrement éxistant le lien désirer.
        Concernant ceci : De plus ce qu'on a fait sur le formulaire1 avec le double clique sur la zone de résultat n'est pas assez pertinent car quand je double clique sur un enregistrement je reviens toujours sur le premier. Donc y a t il un remede a ce problème.
        C'est vraiment étonnant car je l'avais corrigé dans les versions précédentes.
        0
        1. RE,

          Ok pour ca c'est ce que j'ai fait (Non, vous devez ajouter un champ à votre table avec type de données "Lien hypertexte")

          . Apres j'ai juste à créer une textbox dans le formulaire de saisie et de remplir la zone avec le lien désiré ?
          0
      2. Bonjour Mickael,
        Si le lien hypertexte est lié à un enregistrement il faut que dans la table il y est un champ avec type de données "Lien hypertexte" et l'ajouter sur le formulaire "Formulairedesaisie".
        0
        1. Re,

          Oui j'ai pensé à ca et je les fais mais le problème est que si je le met pour un enregistrement, le même lien ce met pour tous les autres enregistrement. Cependant chaque enregistrement doit avoir son propre lien.

          De plus ce qu'on a fait sur le formulaire1 avec le double clique sur la zone de résultat n'est pas assez pertinent car quand je double clique sur un enregistrement je reviens toujours sur le premier. Donc y a t il un remede a ce problème.

          Merci
          0
      3. Bonjour Jean-Pierre,

        Je sais pas si vous aurez lu ce message avant que je finisse mon stage mais bon je tente quand même.
        J'aurais voulus savoir si il était possible de mettre une lien Hypertexte pour chaque enregistrement. J'ai essayé mais le problème c'est qu'il affiche toujours le même lien en changeant d'enregistrement.

        Donc ce que j'aimerais si cela est possible, c'est qu'en double cliquant sur un des enregistrement de la zone de résultat celui si apparaît dans le formulaire de saisie avec le lien qui correspond.

        Cela est-il Possible ?

        Merci
        Mickael
        0
        1. 0
          1. Bonjour et merci,

            Je suis vraiment une bille, même pas eu l'idée de mettre -1.
            Sinon j'ai fait un autre formulaire avec identifiant et mot de passe ca à l'air de bien fonctionner donc c'est cool.

            Donc à moins d'une autre intervention de mon maître de stage votre aide précieuse s'arrête là. Maintenant plus qu'à préparer une belle présentation orale avec un bo powerpoint.

            Encore merci Jean-Pierre.
            0
        2. Bonjour,
          Désolé mais le résultat est 56/56 et pour les autres 16/56 (Article) , 7/56 (doc interne) et 33/56 (doc externe)
          0
          1. Bonjour,

            je suis désolé d insisté, mais je vous envoie la base. En effet au départ on a 56/56 mais en cliquant sur rafraichir on obtient 57/56.

            http://www.cijoint.fr/cjlink.php?file=cj200905/cijNkzxEYR.zip
            0
        3. Bonjour,
          Alors vous l'envoyer, j'attends .
          0
          1. Re,

            Bah c'est la meme que celle que vous venez d'envoyez, ouvré la et cliqué sur rafraichir et vous allez voir 57/56
            0
        4. Bonjour Jean-Pierre,

          Le code que vous m'avez fourni pour le compteur en prenant compte du titre ne fonctionne pas car le compteur m'affiche 57/56 donc prend en compte la ligne titre.
          De plus j'aurais aimais savoir que signifie le "IIF" dans cette ligne de code.
          0
          1. Re bonjour,

            J'ai donc montrer ma base à mon tuteur au sein de l'entreprise. Et donc par miracle il m'a demandé de rajouter ou modifier certains trucs.
            Il voulait savoir pour "sécuriser" la base s'il était possible de mettre en place un nom d'utilisateur avec mot de passe.
            Et de plus si il était possible d'ajouter un scan au niveau des articles faisant qu'en cliquant sur le nom de l'article on peut le visualiser.

            Si vous avez des réponses à ce sujet, je serais preneur. Et vous en serais encore reconnaissant.
            0
          2. Bonjour Mickael,
            Si le compteur n'affiche pas correctement, ce n'est pas mon code qui n'est pas juste mais tout simplement une petite erreur chez vous (contrôler bien la ligne de code).
            Voici la preuve : http://www.cijoint.fr/cjlink.php?file=cj200905/cijFlAyUki.zip

            Pour le "IIf" :
            Renvoie l'un ou l'autre de deux arguments selon l'évaluation d'une expression.
            Syntaxe : IIf(expr, truepart, falsepart)

            0
          3. @Mickael1461Bonjour,
            Concernant :
            Il voulait savoir pour "sécuriser" la base s'il était possible de mettre en place un nom d'utilisateur avec mot de passe. Oui c'est possible.

            Et de plus si il était possible d'ajouter un scan au niveau des articles faisant qu'en cliquant sur le nom de l'article on peut le visualiser. Que comprendre par "scan" ? Par contre si vous voulez visualiser l'article il faut savoir ou il se trouve pour pouvoir le trouver; ensuite avec un lien qui pointe vers cette article.
            0
          4. @Le PingouRE,

            Je suis désolé d'insister mais en appuyant sur le bouton rafraichir ca m affiche 57/56 donc il y a quelque chose qui ne fonctionne pas.
            0
        5. Bonjour Mickael,
          Merci pour le message.
          A mon avis il serait plus présentable d'avoir le titre des colonnes dans la liste résultats du formulaire [Formulaire1].
          Il vous suffit, en mode création, sur les propriétés de [IstResults] et de mettre OUI pour En-têtes colonnes.

          En marge petite correction dans le code:

          1.- Procédure [Private Sub Form_Load()]
          ajouter les 2 lignes suivante juste avant : Case "txt"

          Case "cac" ' ***** ajouter
          ctl.Value = 0 ' ***** ajouter

          2.- Private Sub RefreshQuery()
          Ceci uniquement si vous voulez les titres des colonnes dans [IstResults]
          Modifier le compteur pour tenir compte de la ligne des titres, il faut la combinaison signe "<=", ci-dessous ligne correcte:

          Me.lblStats.Caption = IIf(Me.IstResults.ListCount <= 1, 0, Me.IstResults.ListCount) & " / " & DCount("*", "Table1")

          Bon vent pour la fin de votre stage.
          0
          1. Bonjour Mickael
            J’ai corrigé : TITRE et le compteur de statistique (56/56) qui ne fonctionnaient pas.
            J’ai adapté le code pour Article, DocInt et DocExt afin d’avoir une cohésion correcte de l’ensemble. Note j’ai modifié les noms des 3 contrôles Cas…… par cac…. Simplement le cac pour mémo = case à cocher (plus facile de si retrouver dans le code ou simplement dans les formulaires).
            Question : Cependant je tombe dur un ancien enregistrement je voudrais sur le formulaire vide.
            Réponse : c’est mis en ordre.
            Note : dans le code VBA j’ai annoté chaque intervention par ‘ **** ……
            J’espère que je n’ai rien oublié, sinon vous me le faite savoir.
            Votre application : https://www.cjoint.com/?fjnaFelOKK
            0
            1. Bonjour,

              Jean-Pierre vous êtes formidable.
              La base est impeccable, de plus les explications de chaque code c'est super, pour ma présentation ça sera un plus indéniable.
              Je vous en remercie encore très chaleureusement. Et vous donne peut être rendez-vous pour de nouvelles aventures informatique.
              0
          2. Bonjour Mickael1461,
            Je vais faire encore un extra et faire en sorte que cela fonctionne.
            Cependant je n'ai pas la version que vous citez au poste 43.
            Si vous êtes un peu ... alors à mon tour de vous dire qu'il serait agréable de toujours commencer un poste avec un petit Bonjour ...(cela fait partie de la charte du forum CCM)
            Pas de réponse avant demain soir.
            0
            1. Re-bonjour,

              Oui en effet la chartre faudrait peut être que je la lise.
              Cependant si vous ne voulez pas faire d'extra (comme vous dites) je comprendrais y a pas de soucis vous m'avez assez aidé depuis le début.
              0
          3. C'est bon pour l'ouverture du formulaire de saisie avec le bouton avec le code suivant :

            Private Sub NvlEnr_Click()
            DoCmd.OpenForm "Formulairedesaisie", acNormal
            End Sub

            Cependant je tombe dur un ancien enregistrement je voudrais sur le formulaire vide.
            0
            • 1
            • 2
            • 3