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 hyperliens dans fichier Excel vers répertoire [XL-2016]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de camzo
    Homme Profil pro
    ingénieur en documentation
    Inscrit en
    Décembre 2006
    Messages
    168
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : ingénieur en documentation
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2006
    Messages : 168
    Par défaut création hyperliens dans fichier Excel vers répertoire
    Bonjour à toutes et à tous,

    Je dispose d'un fichier Excel qui contient en gros le contenu suivant:

    Arborescence des répertoires:
    reference indice hyperlien
    1234-X-123-VV-UUU-00001-ZZ-A 23E link
    1234-X-125-ZZ-UUA-00002-ZZ-A 12R link
    1234-X-127-AA-UUT-00003-ZZ-A 12R link

    L'idée est d'activer les links gentillement tapés à la main en colonne 3.

    Ces links sont définis en fonction du contenu des références des documents PDF associés:

    • Lien du doc 1234-X-123-VV-UUU-00001-ZZ-A sera: ./REP1/123/VV/UUU/1234-X-123-VV-UUU-00001-ZZ-A_23E.pdf
    • Lien du doc 1234-X-123-ZZ-UUA-00002-ZZ-A sera: ./REP1/123/ZZ/UUA/1234-X-123-ZZ-UUA-00002-ZZ-A_12R.pdf
    • Lien du doc 1234-X-127-AA-UUT-00003-ZZ-A sera: ./REP1/127/AA/UUT/1234-X-127-AA-UUT-00003-ZZ-A_12R.pdf


    Bref, cela donne l'arborescence suivante sur mon disque dur qui héberge le tout:
    - listing Excel
    -- REP1
    --- 123
    ---- VV
    ----- UUU
    ------ 1234-X-123-VV-UUU-00001-ZZ-A_23E.pdf
    ---- ZZ
    ----- UUA
    ------ 1234-X-123-ZZ-UUA-00002-ZZ-A_23E.pdf
    --- 127
    ---- AA
    ----- UUT
    ------ 1234-X-127-AA-UUT-00003-ZZ-A_23E.pdf


    Cela me semble automatisable car les références sont toujours structurées de la même manière et le nombre de digit est toujours identique. Mais je ne vois pas comment expliquer en VBA qu'il faut construire le lien en fonction des parties de la numérotation des documents.

    D'avance merci pour votre aide.

    Cordialement,
    Camzo

  2. #2
    Membre Expert
    Homme Profil pro
    PAO
    Inscrit en
    Octobre 2014
    Messages
    2 576
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : PAO
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Octobre 2014
    Messages : 2 576
    Par défaut
    Bonjour,
    Exemple à adapter :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Sub Exemple()
        For i = 2 To 4
            Ref = Range("A" & i).Value: Ind = Range("B" & i).Value
            Lien = "./REP1" & Replace(Mid(Ref, 7, 12), "-", "/") & Ref & "_" & Ind & ".pdf"
            'Ici tu fais ton hyperlien dans la col C
        Next
    End Sub
    Edit : j'ai juste oublié un slash, c'est corrigé
    Cordialement
    Ryu

    La connaissance s’acquiert par l’expérience, tout le reste n’est que de l’information. – Albert Einstein

    Pensez à la Balise [ CODE][/CODE ] - à utiliser via le bouton # => Exemple

    Une fois votre problème solutionné pensez à mettre :resolu: en n'oubliant pas d'indiquer qu'elle est la solution finale choisie ;)

  3. #3
    Expert confirmé
    Avatar de kiki29
    Homme Profil pro
    ex Observeur CGG / Analyste prog.
    Inscrit en
    Juin 2006
    Messages
    6 132
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : ex Observeur CGG / Analyste prog.

    Informations forums :
    Inscription : Juin 2006
    Messages : 6 132
    Par défaut
    Salut, à voir par curiosité : Liste des fichiers d'un dossier + Liens

  4. #4
    Membre Expert
    Homme Profil pro
    PAO
    Inscrit en
    Octobre 2014
    Messages
    2 576
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : PAO
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Octobre 2014
    Messages : 2 576
    Par défaut
    Avec l'hyperlien :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Sub Exemple()
    Dim Ref$, Ind$, lien$
        For i = 2 To 4
            With Sheets("Feuil1")
                Ref = .Range("A" & i).Value: Ind = .Range("B" & i).Value
                lien = "./REP1" & Replace(Mid(Ref, 7, 12), "-", "/") & Ref & "_" & Ind & ".pdf"
                .Hyperlinks.Add Anchor:=.Range("C" & i), Address:=lien, TextToDisplay:="Link"
                '.Range("D" & i) = lien
                 Debug.Print lien
            End With
        Next
    End Sub
    Edit : j'avais oublié un point je l'ai rajouté sur la col C
    Cordialement
    Ryu

    La connaissance s’acquiert par l’expérience, tout le reste n’est que de l’information. – Albert Einstein

    Pensez à la Balise [ CODE][/CODE ] - à utiliser via le bouton # => Exemple

    Une fois votre problème solutionné pensez à mettre :resolu: en n'oubliant pas d'indiquer qu'elle est la solution finale choisie ;)

  5. #5
    Membre confirmé Avatar de camzo
    Homme Profil pro
    ingénieur en documentation
    Inscrit en
    Décembre 2006
    Messages
    168
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : ingénieur en documentation
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2006
    Messages : 168
    Par défaut
    Merci à vous, le code fonctionne très bien.
    Et je comprends désormais comment découper ma référence pour en construire le chemin.

    Bonne continuation !

    Cordialement,
    Camille

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

Discussions similaires

  1. Réponses: 13
    Dernier message: 25/03/2013, 15h58
  2. Création et écrirture dans fichier EXCEL
    Par Rifton007 dans le forum VB.NET
    Réponses: 3
    Dernier message: 18/05/2009, 16h47
  3. Réponses: 0
    Dernier message: 24/11/2008, 16h11
  4. Migrer un fichier excel vers une base sql serveur
    Par vdavid1982 dans le forum Langage SQL
    Réponses: 1
    Dernier message: 12/07/2005, 16h26
  5. Création liste dans cellules Excel en VBA
    Par yazoo dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 21/04/2005, 14h46

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