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

IHM Discussion :

[Formulaire][VBA]Stocker le lien hypertexte d'un fichier


Sujet :

IHM

  1. #1
    Membre à l'essai
    Inscrit en
    Avril 2007
    Messages
    19
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 19
    Points : 10
    Points
    10
    Par défaut [Formulaire][VBA]Stocker le lien hypertexte d'un fichier
    Bonjour, je galere un peu sur une fonctionnalite assez simple et je suis nouveau sur le forum
    dans un champ j'aimerai le lien direct vers un fichier sur un espace réseau; pour une ouverture si on clique dessus.
    En fait j'aimerai que si on a pas choisi le fichier en cliquant sur le champ il ouvre un panneau d'explorateur pour pouvoir aller choisir le fichier et apres il l'enregistre dans le lien.
    j'aimerais que la cellule ne puisse pas être modifiée sauf avec un bouton à cote par exemple qui demandera une confirmation de changer le lien vers le fichier.

    ca doit etre simple mais je galere merci d'avance à tous;;;

  2. #2
    Membre habitué
    Inscrit en
    Février 2006
    Messages
    230
    Détails du profil
    Informations personnelles :
    Âge : 64

    Informations forums :
    Inscription : Février 2006
    Messages : 230
    Points : 176
    Points
    176
    Par défaut
    Bonjour,
    C'est sans doute très simple à condition que l'on comprenne l'énoncé... Personnellement, j'ai eu une idée différente à la lecture de chaque ligne de ce que tu voulais faire... Peux tu expliciter svp ?
    (C'est peut-être pour cela qu'il n'y a eu aucune réponse)

  3. #3
    Membre à l'essai
    Inscrit en
    Avril 2007
    Messages
    19
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 19
    Points : 10
    Points
    10
    Par défaut
    Il me faudrait juste un champ sur un formulaire.
    Si le champ est vide, tu cliques dessus, et il te permet d'aller chercher un fichier precis. il enregistre le lien complet.
    Si le champ est plein, tu clique dessus et il t'ouvre le fichier.
    de plus si il est plein, un bouton apparait à coté pour changer le lien.

    J'espère avoir été plus clair merci.

  4. #4
    Membre habitué
    Inscrit en
    Février 2006
    Messages
    230
    Détails du profil
    Informations personnelles :
    Âge : 64

    Informations forums :
    Inscription : Février 2006
    Messages : 230
    Points : 176
    Points
    176
    Par défaut
    Bonjour, voilà beaucoup plus clair...

    1) pour aller chercher le chemin du fichier je te propose quelque chose comme cela quand ton champ est vide :

    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
    'Sub getFileName()
        ' Affiche la boîte de dialogue Ouvrir fichier d'Office afin de choisir
        ' un nom de fichier pour l'enregistrement de l'escorte en cours.
            Dim fileName As String
            Dim result As Integer
                With Application.FileDialog(msoFileDialogFilePicker)
                .Title = "Sélectionner un fichier"
                .Filters.Add "Tous les fichiers", "*.*"
                .Filters.Add "Fichiers JPEG", "*.jpg"
                .Filters.Add "Fichiers PDF", "*.pdf"
                .FilterIndex = 1
                .AllowMultiSelect = False
                .InitialFileName = CurrentProject.Path
            '.InitialFileName = "C:\Ton_Chemin"
                result = .Show
                    If (result <> 0) Then
                    fileName = Trim(.SelectedItems.Item(1))
                    varPJ = fileName
                    End If
    2) Quand ton champ est plein : il suffit de gérer avec une condition If...

    Bonne journée
    F

  5. #5
    Rédacteur/Modérateur

    Avatar de Heureux-oli
    Homme Profil pro
    Contrôleur d'industrie
    Inscrit en
    Février 2006
    Messages
    21 087
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : Belgique

    Informations professionnelles :
    Activité : Contrôleur d'industrie
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 21 087
    Points : 42 926
    Points
    42 926
    Par défaut
    Pour que ton champ Hyperlink fonctionne, il faut qu'il soit entouré de # dans la variable VBA.
    J'ai pas encore de décodeur, alors, postez en clair ! Comment mettre une balise de code ?
    Débutez en VBA

    Mes articles


    Dans un MP, vous pouvez me dire que je suis beau, ... mais si c'est une question technique je ne la lis pas ! Vous êtes prévenus !

  6. #6
    Membre à l'essai
    Inscrit en
    Avril 2007
    Messages
    19
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 19
    Points : 10
    Points
    10
    Par défaut
    re

    Je l'ai mis dans un module,
    et jai utilise la procedure on enter sur le champs.

    Malheureusement il bloque à
    With Application.FileDialog(msoFileDialogFilePicker)

    j'avoue sous access, je suis pas tres bon pourtant je me débrouillais sous excel lol.

    Merci pour votre aide...

  7. #7
    Expert éminent sénior
    Avatar de Domi2
    Homme Profil pro
    Gestionnaire
    Inscrit en
    Juin 2006
    Messages
    7 194
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : Suisse

    Informations professionnelles :
    Activité : Gestionnaire
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juin 2006
    Messages : 7 194
    Points : 16 040
    Points
    16 040
    Par défaut
    Bonjour,

    Tu utilises quelle version d'access ?

    Si tu as Access 2000, tu ne peux pas utiliser ce code (FileDialog n'est disponible qu'à partir de la version 2002).

    Il faut utiliser le code que tu trouveras .

    Domi2
    Vous avez des montres, nous avons le temps ! (citation attribuée à L.-S. Senghor)

    Ici, on ne perd pas de temps ! On en passe...


    Access : créer des codes-barres 128 en VBA
    Access : les commandes intégrées des menus

    Ce message (ou un autre) vous a aidé ? Votez pour lui avec

  8. #8
    Membre à l'essai
    Inscrit en
    Avril 2007
    Messages
    19
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 19
    Points : 10
    Points
    10
    Par défaut
    je suis sous access 2003.

    je pense que cest une library de reference que je nai pas chargée...
    mais laquelle.

    Merci d'avance

  9. #9
    Expert éminent sénior
    Avatar de Domi2
    Homme Profil pro
    Gestionnaire
    Inscrit en
    Juin 2006
    Messages
    7 194
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : Suisse

    Informations professionnelles :
    Activité : Gestionnaire
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juin 2006
    Messages : 7 194
    Points : 16 040
    Points
    16 040
    Par défaut
    Re,

    Microsoft Office XX (11 dans ton cas).

    Domi2
    Vous avez des montres, nous avons le temps ! (citation attribuée à L.-S. Senghor)

    Ici, on ne perd pas de temps ! On en passe...


    Access : créer des codes-barres 128 en VBA
    Access : les commandes intégrées des menus

    Ce message (ou un autre) vous a aidé ? Votez pour lui avec

  10. #10
    Membre à l'essai
    Inscrit en
    Avril 2007
    Messages
    19
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 19
    Points : 10
    Points
    10
    Par défaut
    ok ca marche mais je vais vraiment passer pour un nul mais rien ne s'affiche ni sur le formulaire ni dans la table...

    Vous etes géniaux Merci

  11. #11
    Expert éminent sénior
    Avatar de Domi2
    Homme Profil pro
    Gestionnaire
    Inscrit en
    Juin 2006
    Messages
    7 194
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : Suisse

    Informations professionnelles :
    Activité : Gestionnaire
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juin 2006
    Messages : 7 194
    Points : 16 040
    Points
    16 040
    Par défaut
    Re,

    mais rien ne s'affiche ni sur le formulaire
    Ben... Tu as passé le nom du fichier que tu récupères au contrôle de ton formulaire ? (En oubliant pas de l'entourer de "#", comme indiqué par Heureux-Oli plus haut ?).

    Ou tu as une erreur ? si oui, laquelle ?

    Domi2
    Vous avez des montres, nous avons le temps ! (citation attribuée à L.-S. Senghor)

    Ici, on ne perd pas de temps ! On en passe...


    Access : créer des codes-barres 128 en VBA
    Access : les commandes intégrées des menus

    Ce message (ou un autre) vous a aidé ? Votez pour lui avec

  12. #12
    Membre à l'essai
    Inscrit en
    Avril 2007
    Messages
    19
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 19
    Points : 10
    Points
    10
    Par défaut
    Alors j'ai un peu cherché,
    voici ce que j'ai :

    dans le formulaire sur controle source , jai lien qui est l'emplacement dans ma table ou je veux enregistrer le lien.

    Après le code donné plus haut,Je l'ai mis dans un module qui s'appelle Open file
    et
    dans la form(en vue macro) j'ai ca

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Private Sub Lien_Enter()
    Call getFileName
    MsgBox varpj
    End Sub
    mais déjà à l'affichage du msgbox, la variable est vide.
    voilà
    donc comment faire pour garder la variable et aussi l'inserer

    Merci d'avance

  13. #13
    Expert éminent sénior
    Avatar de Domi2
    Homme Profil pro
    Gestionnaire
    Inscrit en
    Juin 2006
    Messages
    7 194
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : Suisse

    Informations professionnelles :
    Activité : Gestionnaire
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juin 2006
    Messages : 7 194
    Points : 16 040
    Points
    16 040
    Par défaut
    Re,

    Ce que je ferais, c'est d'abord de transformer la sub en fonction, à placer dans un module standard.

    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
    Function getFileName(FileName) As String
     
        'Dim FileName As String
        Dim result As Integer
     
        With Application.FileDialog(msoFileDialogFilePicker)
            .Title = "Sélectionner un fichier"
            .Filters.Add "Tous les fichiers", "*.*"
            .Filters.Add "Fichiers JPEG", "*.jpg"
            .Filters.Add "Fichiers PDF", "*.pdf"
            .FilterIndex = 1
            .AllowMultiSelect = False
            .InitialFileName = CurrentProject.Path
            '.InitialFileName = "C:\Ton_Chemin"
            result = .Show
     
            If (result <> 0) Then
     
                FileName = Trim(.SelectedItems.Item(1))
     
            End If
     
        End With
     
    End Function
    Et pour l'appeler :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Public Sub Test()
     
    Call getFileName(LienhyperLinK)
     
    MsgBox LienHyperLink
     
    End Sub
    C'est pas testé et je n'utilise pas mso, il y'a peut-être mieux à faire...

    Domi2
    Vous avez des montres, nous avons le temps ! (citation attribuée à L.-S. Senghor)

    Ici, on ne perd pas de temps ! On en passe...


    Access : créer des codes-barres 128 en VBA
    Access : les commandes intégrées des menus

    Ce message (ou un autre) vous a aidé ? Votez pour lui avec

  14. #14
    Membre à l'essai
    Inscrit en
    Avril 2007
    Messages
    19
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 19
    Points : 10
    Points
    10
    Par défaut
    j'arrive à faire apparaitre le lien dans la message box mais il ne s'affiche pas encore dans le champ;p

    Une idée?

    Mais merci de ton aide

  15. #15
    Expert éminent sénior
    Avatar de Domi2
    Homme Profil pro
    Gestionnaire
    Inscrit en
    Juin 2006
    Messages
    7 194
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : Suisse

    Informations professionnelles :
    Activité : Gestionnaire
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juin 2006
    Messages : 7 194
    Points : 16 040
    Points
    16 040
    Par défaut
    Re,

    A la place du message :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Me.LeNomDeTonChamp = LienHyperLink
    Ou mieux :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Me.LeNomDeTonChamp = "#" & LienHyperLink & "#"
    Domi2
    Vous avez des montres, nous avons le temps ! (citation attribuée à L.-S. Senghor)

    Ici, on ne perd pas de temps ! On en passe...


    Access : créer des codes-barres 128 en VBA
    Access : les commandes intégrées des menus

    Ce message (ou un autre) vous a aidé ? Votez pour lui avec

  16. #16
    Membre à l'essai
    Inscrit en
    Avril 2007
    Messages
    19
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 19
    Points : 10
    Points
    10
    Par défaut
    Ok Merci c'est génial ca marche;;

    Merci à toi car je vais en avoir besoin de cette fonction
    merci Beaucoup.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [XL-2013] VBA création de lien hypertexte
    Par Jynno22 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 29/11/2013, 20h53
  2. Réponses: 1
    Dernier message: 11/12/2008, 14h44
  3. Réponses: 34
    Dernier message: 23/10/2007, 13h53
  4. VBA Excel et Liens Hypertextes
    Par AZERTY2006 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 25/10/2006, 11h37
  5. Récupérer le lien hypertexte d'un fichier...
    Par Célinette dans le forum Access
    Réponses: 16
    Dernier message: 12/03/2006, 16h50

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