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 :

Lien hypertexte VBA plusieurs cellules [XL-2010]


Sujet :

Macros et VBA Excel

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2013
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2013
    Messages : 7
    Par défaut Lien hypertexte VBA plusieurs cellules
    Bonjour,

    Voici mon problème:

    Dans une feuille intitulée "cat famille " j'ai en colonne C des numéro d'identification du type "1278" (environ 100 lignes ; C2; C3...). J'aimerais à partir de ces numéros générer des liens hypertexte qui me renverrai directement dans une autre feuille "ref frs" sur la cellule corespondante au même numéro (les numéros sont cette fois ci localisés en collone A).
    je cherche donc un moyen pour éviter de tout faire manuellement.
    J'ai pensé à une macro, mais je ne sais pas comment la formaliser!

    Merci d'avance pour votre aide

  2. #2
    Expert éminent

    Profil pro
    Conseil, Formation, Développement - Indépendant
    Inscrit en
    Février 2010
    Messages
    8 564
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Conseil, Formation, Développement - Indépendant

    Informations forums :
    Inscription : Février 2010
    Messages : 8 564
    Par défaut
    Bonjour

    Si une colonne supplémentaire ne te gène pas tu peux aussi le faire par la fonction LIEN_HYPERTEXTE.

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2013
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2013
    Messages : 7
    Par défaut formule hypertexte
    Merci Chris pour ta réponse.

    J'ai essayé de passer par la fonction lin hypertexte par contre en cliquant sur le lien, il me renvoie toujours sur la même cellule aors que je voudrais qu'il aille directement sur la cellule correponsant à mon numéro de base!

    Merci

  4. #4
    Expert éminent

    Profil pro
    Conseil, Formation, Développement - Indépendant
    Inscrit en
    Février 2010
    Messages
    8 564
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Conseil, Formation, Développement - Indépendant

    Informations forums :
    Inscription : Février 2010
    Messages : 8 564
    Par défaut
    Bonjour

    A toi d'ajuster la formule selon la cible.

    Si tu n'y arrives pas, poste un exemple.

  5. #5
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2013
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2013
    Messages : 7
    Par défaut lien hypertexte
    voici ma formule:

    =LIEN_HYPERTEXTE("[base frs 2013.xls] 'ref frs'!A5";"ade")


    le Problème c'est que j'ai plusieurs cellules. chaque cellule possède un numéro spécifique. ma formule me renvoie toujours sur la cellule A5, alors que j'aimerais qu'elle évolue en fonction des numéros.

  6. #6
    Rédacteur
    Avatar de Philippe Tulliez
    Homme Profil pro
    Formateur, développeur et consultant Excel, Access, Word et VBA
    Inscrit en
    Janvier 2010
    Messages
    13 173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur, développeur et consultant Excel, Access, Word et VBA

    Informations forums :
    Inscription : Janvier 2010
    Messages : 13 173
    Billets dans le blog
    53
    Par défaut
    Bonjour,
    e Problème c'est que j'ai plusieurs cellules. chaque cellule possède un numéro spécifique. ma formule me renvoie toujours sur la cellule A5, alors que j'aimerais qu'elle évolue en fonction des numéros.
    Il faudrait être plus explicite. En fonction de quels numéros ?
    Plusieurs syntaxes sont possibles
    Ici fait référence à la cellule dont l'adresse est indiquée en cellule D3
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =LIEN_HYPERTEXTE("[monClasseur.xls] 'Feuil1'!" & D3;"ade")
    Là, fait référence à la cellule D de la même ligne où se trouve la formule
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =LIEN_HYPERTEXTE("[monClasseur.xls] 'Feuil1'!D" & LIGNE();"ade")
    Et ainsi de suite, il y a beaucoup de possibilités.
    Philippe Tulliez
    Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)
    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
    Mes tutoriels : Utilisation de l'assistant « Insertion de fonction », Les filtres avancés ou élaborés dans Excel
    Mon dernier billet : Utilisation de la fonction Dir en VBA pour vérifier l'existence d'un fichier

  7. #7
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2013
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2013
    Messages : 7
    Par défaut lien hypertexte
    Merci de votre réponse. Je vais tenter d'être plus explicite.

    dans mon classeur excel, je possède deux feuilles , une intitulée "famille" et une " frs". Chaque feuille comporte une base avec plusieurs lignes et collones.
    Dans ma première feuille, en collone C qui s'intitule " code tiers" j 'ai des codes ( C1 58789, C2 89641 ainsi de suite). Sur ma deuxième feuille (frs), dans ma base je retrouve en collone A les code tiers de ma première feuille.
    Ce que je veux, c'est qu'en cliquant sur une des cellules de la collone C (feuille famille) cela me renvoie en collone A de l'autre feuille, directement sur la cellule correspondante au bon code tiers.
    Le problème, c'est que j'ai plusieurs lignes donc je cherche à moyen pour éviter de le faire manuellement.


    Merci de votre aide

  8. #8
    Rédacteur
    Avatar de Philippe Tulliez
    Homme Profil pro
    Formateur, développeur et consultant Excel, Access, Word et VBA
    Inscrit en
    Janvier 2010
    Messages
    13 173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur, développeur et consultant Excel, Access, Word et VBA

    Informations forums :
    Inscription : Janvier 2010
    Messages : 13 173
    Billets dans le blog
    53
    Par défaut
    Bonjour,
    Une piste à adapter et à améliorer
    Cela implique l'utilisation d'une colonne supplémentaire et que le code Tiers se trouvant dans la colonne C de la feuille [Famille] existe bien dans la colonne A de la feuille [frs]
    Formule à placer dans une colonne de la feuille [Famille] se trouvant sur la même ligne que le code tiers.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =LIEN_HYPERTEXTE("[TestHyperlink.xls] 'frs'!A" & EQUIV(C2;frs!$A$2:$A$20;0)+1;C2)
    Ici la colonne A a une plage limitée de A2 à A20

    [EDIT]
    Pour éviter le message d'erreur #N/A si le compte tiers n'existe pas.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =SIERREUR(LIEN_HYPERTEXTE("[TestHyperlink.xls] 'frs'!A" & EQUIV(C4;frs!$A$2:$A$20;0)+1;C4);"Pas trouvé " & C4)
    Valable uniquement pour les versions supérieures à 2003
    Philippe Tulliez
    Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)
    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
    Mes tutoriels : Utilisation de l'assistant « Insertion de fonction », Les filtres avancés ou élaborés dans Excel
    Mon dernier billet : Utilisation de la fonction Dir en VBA pour vérifier l'existence d'un fichier

  9. #9
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2013
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2013
    Messages : 7
    Par défaut lien hypertexte
    j'ai essayé avec votre formule, mais elle m'affiche # n/a alors que les codes sont bien la..

    je vous joint le fichier.


    Merci
    Fichiers attachés Fichiers attachés

  10. #10
    Rédacteur
    Avatar de Philippe Tulliez
    Homme Profil pro
    Formateur, développeur et consultant Excel, Access, Word et VBA
    Inscrit en
    Janvier 2010
    Messages
    13 173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur, développeur et consultant Excel, Access, Word et VBA

    Informations forums :
    Inscription : Janvier 2010
    Messages : 13 173
    Billets dans le blog
    53
    Par défaut
    Bonjour,
    Il y avait des problèmes du nom de la feuille avec espace
    Cette formule fonctionne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =LIEN_HYPERTEXTE("[base frs 2013.xls]'frs'!A" & EQUIV(C2;frs!$A$2:$A$196;0)+1;C2)
    Et avec la formule SIERREUR
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =SIERREUR(LIEN_HYPERTEXTE("[base frs 2013.xls]'frs'!A" & EQUIV(C2;frs!$A$2:$A$196;0)+1;C2);"Pas trouvé " & C2)
    Le classeur en retour avec une colonne contenant la formule SIERREUR
    Fichiers attachés Fichiers attachés
    Philippe Tulliez
    Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)
    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
    Mes tutoriels : Utilisation de l'assistant « Insertion de fonction », Les filtres avancés ou élaborés dans Excel
    Mon dernier billet : Utilisation de la fonction Dir en VBA pour vérifier l'existence d'un fichier

  11. #11
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2013
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2013
    Messages : 7
    Par défaut lien hypertexte
    Il me reste un dernier souci: en cliquant sur le lien, excel ne me renvoie par sur la feuille frs, rien ne se passe. Est-ce normal?

    Merci encore pour votre contribution!

  12. #12
    Rédacteur
    Avatar de Philippe Tulliez
    Homme Profil pro
    Formateur, développeur et consultant Excel, Access, Word et VBA
    Inscrit en
    Janvier 2010
    Messages
    13 173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur, développeur et consultant Excel, Access, Word et VBA

    Informations forums :
    Inscription : Janvier 2010
    Messages : 13 173
    Billets dans le blog
    53
    Par défaut
    Bonjour,

    Non, ce n'est pas normal.
    Chez moi cela fonctionne parfaitement.
    Philippe Tulliez
    Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)
    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
    Mes tutoriels : Utilisation de l'assistant « Insertion de fonction », Les filtres avancés ou élaborés dans Excel
    Mon dernier billet : Utilisation de la fonction Dir en VBA pour vérifier l'existence d'un fichier

  13. #13
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2013
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2013
    Messages : 7
    Par défaut lien hypertexte
    Merci bcp votre aide!
    Bonne journée!

  14. #14
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Octobre 2012
    Messages
    199
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Octobre 2012
    Messages : 199
    Par défaut
    Bonjour

    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
     
     
    Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
     
    Dim laValeur As String
    Dim ligneValeur As Integer
     
    laValeur = ActiveCell.Value
     
    'Recherche de la valeur dans la colonne A de la feuilles Frs
    Set R = Sheets("frs").Range("A:A").Find(laValeur)
     
    If Not R Is Nothing Then
        ligneValeur = R.Row
        Sheets("frs").Activate
        Sheets("frs").Cells(ligneValeur, 1).Select
    End If
     
    End Sub

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

Discussions similaires

  1. [XL-2010] Lien hypertexte entre deux cellules via VBA
    Par gbbtt dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 09/08/2012, 11h20
  2. [XL-2003] Récupérer le lien hyperText d'1 cellule en vba
    Par electrosat03 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 13/02/2011, 13h15
  3. Recopier un lien Hypertexte d'une cellule vers un objet Shape ?
    Par nicolas_151 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 02/06/2008, 09h42
  4. Affichage lien hypertexte dans une cellule
    Par JACQUEMIN dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 02/12/2006, 10h36
  5. Lien Hypertext VBA Outlook 2003
    Par crashyear dans le forum Outlook
    Réponses: 3
    Dernier message: 30/10/2006, 08h20

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