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

Access Discussion :

liens hypertexte dans une page d'accès aux données (Access 2003)


Sujet :

Access

  1. #1
    Candidat au Club
    Inscrit en
    Mai 2006
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 5
    Points : 4
    Points
    4
    Par défaut liens hypertexte dans une page d'accès aux données (Access 2003)
    Bonjour,

    Dans une page d'accès aux données, j'ai un menu déroulant avec des informations relatives à chaque champ de ce menu. Jusqu'ici tout va bien. J'ai joint des liens hypertextes qui renvoient à des états relatifs aux champs. Ce que j'aimerais, et n'arrive pas à faire, c'est que le lien renvoie directement et uniquement à l'état correspondant au champ actif du menu déroulant. Pour l'instant j'ai un dossier qui s'ouvre et dans lequel il y a tous les états.
    Voilà si qqun peut m'aider je lui en serais très reconnaissant. C'est une question de vie ou de mort...
    Merci

    L'indien obscur

  2. #2
    Expert éminent
    Avatar de LedZeppII
    Homme Profil pro
    Maintenance données produits
    Inscrit en
    Décembre 2005
    Messages
    4 485
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Maintenance données produits
    Secteur : Distribution

    Informations forums :
    Inscription : Décembre 2005
    Messages : 4 485
    Points : 7 768
    Points
    7 768
    Par défaut
    Bonjour,

    ce que tu appelles menu déroulant, qu'est-ce que c'est comme type de contrôle Access ?
    Moi je fais ça avec un 'lien hypertexte relié' alimenté par deux champs d'une table.
    Un pour le texte à afficher, l'autre pour le lien (nom du fichier html cible).

    A+

  3. #3
    Candidat au Club
    Inscrit en
    Mai 2006
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 5
    Points : 4
    Points
    4
    Par défaut
    Bonjour,

    Merci d'avoir répondu. Je vais répondre avec mes connaissances, qui sont assez basiques. Mon contrôle est une simple "dropdown list", les élements de la liste renvoient aux champs d'une table.
    J'ai un dossier où sont archivés des états correspondant aux champs. Pour le champ A, j'ai A.html, pour B, B.html, etc.
    Ce que je cherche c'est ce que je dois rentrer comme phrase dans le menu Propriété du lien hypertexte pour qu'au champ apparent du menu déroulant, ex D, le lien aille directement chercher l'état correspondant dans le dossier où il est archivé, ici D.html. Si je choisi dans le menu déroulant l'élément F, le même lien hypertexte ira ouvrir le fichier F.html, etc...
    Merci pour votre aide

  4. #4
    Expert éminent
    Avatar de LedZeppII
    Homme Profil pro
    Maintenance données produits
    Inscrit en
    Décembre 2005
    Messages
    4 485
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Maintenance données produits
    Secteur : Distribution

    Informations forums :
    Inscription : Décembre 2005
    Messages : 4 485
    Points : 7 768
    Points
    7 768
    Par défaut
    Bonsoir,

    C'est ce qu'il m'avait semblé comprendre mais j'étais pas sur.
    Je pense qu'il faut associer un bouton à la liste.
    1. Tu fais un choix dans la liste
    2. Tu cliques sur le bouton.
    Exemple:
    Ma liste :
    Données:ListRowSource = nom de ma table contenant les champs Etat et Lien
    Données:ListDisplayField = Etat
    Données:ListBoundField = Lien
    Autres:id = lstMenu1
    Mon Bouton:
    Autres:id=b_Menu

    Clic-droit dans la page de données en mode conception -> Microsoft script Editor
    Dans MSE:
    Affichage -> Autres Fenêtres -> Structure du script.
    Dans cette fenêtre il y a une arborescence.
    Développer Client - Objets et évènements
    Repérer le bouton b_Menu, le développer (cliquer sur le +)
    Double-cliquer sur onclick
    MSE insère ceci dans la page :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <SCRIPT event=onclick for=b_Menu language=vbscript>
    <!--
    -->
    </SCRIPT>
    Ajouter les deux lignes bleues :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <SCRIPT event=onclick for=b_Menu language=vbscript>
    <!--
     target = document.all("lstMenu1").value 
    window.open target 
    -->
    </SCRIPT>
    Exemple de contenu de ma table des liens:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    Etat                     Lien
    --------------------    -------------------------------------------------------------
    Analyse Ventes          file://D:\Mes documents\Access\Pages comptoir\Anasales.htm
    Produits/Fourniseurs    file://D:\Mes documents\Access\Pages comptoir\Produits Par Fournisseurs.htm
    Produits/Fourniseurs2   ./Produits Par Fournisseurs.htm
    Produits/Fourniseurs3   Produits Par Fournisseurs.htm
    Sauvegarder (depuis MSE). Faire un essai.
    Sur mon PC ça fonctionne comme ça. Je ne sais pas pour d'autres configs.
    J'ai testé divers formats de liens et tous sont OK.

    Bon courage

  5. #5
    Candidat au Club
    Inscrit en
    Mai 2006
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 5
    Points : 4
    Points
    4
    Par défaut
    Bonjour

    Merci pour votre aide. 2 choses :

    Tout d'abord, la construction que vous proposez nécessite de rentrer à la main dans une table tous les liens hypertextes ? Il n'existe donc pas de possibilité de lien de la forme C:\Docs\"[etat]".html qui renverrait directement à l'etat voulu ?

    Ensuite, j'ai essayé de réaliser ce que vous proposez. En passant du mode Création au mode Page, j'obtiens ce message : "controle de groupe non valide", et ensuite en cliquant sur le bouton lien, j'obtiens "erreur de script de Internet explorer, ligne 166 (qui correspond à window.open target), erreur : accès refusé"

    Je sollicite donc à nouveau vos lumières. Merci

  6. #6
    Expert éminent
    Avatar de LedZeppII
    Homme Profil pro
    Maintenance données produits
    Inscrit en
    Décembre 2005
    Messages
    4 485
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Maintenance données produits
    Secteur : Distribution

    Informations forums :
    Inscription : Décembre 2005
    Messages : 4 485
    Points : 7 768
    Points
    7 768
    Par défaut
    Bonsoir,

    Je ne vois pas à quoi correspond le message "controle de groupe non valide".
    L'autre erreur me fait penser à une option ou un logiciel pour bloquer les publicités.
    J'espère que le onload que je propose plus bas ne sera pas bloqué.

    J'ai expérimenté une autre solution pour contourner window.open .
    A droite de la liste, supprimer le bouton et mettre à la place un lien hypertexte.
    Propriétés : Autres : Id=lienMenu
    __________Autres : InnerText=Cliquer Ici
    Ensuite on ouvre Microsoft Script Editor.
    Afficher la fenêtre 'Structure du Script' et développer 'Client - Ojbets et Evènements'
    Double-cliquer sur l'évênement onchange de la liste lstMenu1:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    <SCRIPT event=onchange for=lstMenu1 language=vbscript>
    <!--
    Set atag = document.all("lienMenu").parentelement
    target = document.all("lstMenu1").value & ".htm"
    atag.href = target
    -->
    </SCRIPT>
    Double-cliquer sur l'évênement onload de l'objet window
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <SCRIPT LANGUAGE=vbscript FOR=window EVENT=onload>
    <!--
    Set atag = document.all("lienMenu").parentelement
    target = document.all("lstMenu1").value & ".htm"
    atag.href = target
    -->
    Le premier bout de code met à jour la destination du lien hypertexte quand la liste change de valeur.
    Le deuxième initialise la destination du lien au chargement de la page.

    Ma liste lstMenu1 est alimentée par une table dont je n'utilise qu'un champ.
    Le champ Etat contenant le nom de l'état.
    Dans cette configuration, la propriété ListDisplayField est laissée vierge.
    Seule ListBoundField est renseignée avec le nom du champ de ma table.

    Ma page menu et mes pages d'états étant dans le même répertoire je me contente d'ajouter ".htm" au nom de l'état pour créer le lien.
    Si tu veux tu peux ajouter le répertoire ( target = "C:\.. ..\" & document.all("lstMenu1").value & ".htm")

    Bon courage

Discussions similaires

  1. Faire des liens hypertextes dans une page JSP
    Par kariel dans le forum Servlets/JSP
    Réponses: 1
    Dernier message: 17/07/2013, 10h37
  2. OLE dans une page d'accés au données
    Par mustaphazarrouq dans le forum IHM
    Réponses: 2
    Dernier message: 02/09/2007, 19h23
  3. Réponses: 13
    Dernier message: 23/02/2006, 11h42
  4. Page d'accés aux données Access sur un site web
    Par kilimanjaro dans le forum Access
    Réponses: 3
    Dernier message: 29/01/2006, 19h31
  5. lien hypertexte dans une anim flash
    Par vedder dans le forum Flash
    Réponses: 17
    Dernier message: 14/01/2004, 14h11

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