Problème de lien Hypertexte sous Excel

Résolu
galh -  
gbinforme Messages postés 14930 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour a tous

J'ai créer dans Excel une colonne contenant des liens vers un site
Ex: http://monsite/référence/N° d' image.jpg
Mon problème est:
il faut clicher 2 fois quitter la ligne et revenir dessus pour que le liens soit actif
le problème c'est qu'il y a plus de 3000 lignes a faire !!
je voudrais donc que cette colonne de liens soit rendu active sans a avoir a faire la manip ci dessus
Merci pour vos réponses
galh
Configuration: Windows XP
Firefox 2.0.0.14

8 réponses

  1. gbinforme Messages postés 14930 Date d'inscription   Statut Contributeur Dernière intervention   4 744
     
    bonjour

    Ton lien résultant d'une formule, c'est logique qu'il ne soit pas activé.

    Avec une petite macro alors ? (mode d'emploi)
    Sub valide_lien() ' validation liens d'une colonne
    Dim lig As Long
    Dim col As Integer
    col = 2             ' numéro colonne à valider (B ?)
    For lig = 1 To Cells.SpecialCells(xlCellTypeLastCell).Row
        If Cells(lig, col).Value <> "" Then
            ActiveSheet.Hyperlinks.Add Anchor:=Cells(lig, col), _
                Address:=Cells(lig, col).Value, TextToDisplay:=Cells(lig, col).Value
        End If
    Next lig
    End Sub
    1
    1. galh
       
      Bonjour
      je n'ai pas l'habitude des macro
      Je suppose qu'il faut créer un fichier .txt "validation lien" dans lequel je met ta macro
      puis j'installe cette nouvelle macro dans excel
      dis moi si j'ai bien compris?
      le PB etant le N° de colonne car cette macro tourneras que sur la colonne X ouY
      Merci je test ça
      galh
      0
      1. galh > galh
         
        Bonjour
        J'ai mis votre macro dans un fichier "ValidationLiens.vba

        Sub valide_lien() ' validation liens d'une colonne
        Dim lig As Long
        Dim col As Integer
        col = G ' numéro colonne à valider (B ?)
        For lig = 1 To Cells.SpecialCells(xlCellTypeLastCell).Row
        If Cells(lig, col).Value <> "" Then
        ActiveSheet.Hyperlinks.Add Anchor:=Cells(lig, col), _
        Address:=Cells(lig, col).Value, TextToDisplay:=Cells(lig, col).Value
        End If
        Next lig
        End Sub

        je l'ai lancer avec "outil" "macro" et il bloque a :
        If Cells(lig, col).Value <> "" Then

        Ou est l'erreur?
        galh
        0
  2. Furtif Messages postés 9956 Statut Contributeur 933
     
    Normalement ça marche tout seul .... attention à ton lien, .. pas de voyelles accentuées sur le Net.
    0
    1. galh
       
      Bonsoir Furtif

      les liens fonctionnent très bien
      mais pour les faire fonctionner il faut faire double clicker puis aller sur la ligne suivante et revenir clicker sur le lien et la ça fonctionne
      mais j'ai plus de 3000 lignes a faire
      une fois le lien validé il reste valider mème en quitant Excel et en revenant dessus
      J'attend toujours une réponse sur mon problème

      Merci de ta réponse
      galh
      0
      1. Furtif Messages postés 9956 Statut Contributeur 933 > galh
         
        "mais pour les faire fonctionner il faut faire double clicker puis aller sur la ligne suivante et revenir clicker sur le lien et la ça fonctionne"

        Euhhh ... non, sur le mien, je clique juste une fois sur la cellule qui contient l'adresse du site visé, pour ouvrir ma page WEB.

        Mais, comment déclares-tu ton lien ? .... par click droit sur la cellule, puis "insérer un lien hypertext" ?

        0
      2. galh > Furtif Messages postés 9956 Statut Contributeur
         
        bonjour Furtif

        Je n'ai pas trouvé sur "format cellule" l'intitulé "insérer un lien hypertext" je tourne avec excel 2003

        a bientot
        galh
        0
      3. Furtif Messages postés 9956 Statut Contributeur 933 > galh
         
        C'est en cliquant droit sur la cellule où tu veux mettre ton lien, pas dans les menus ... enfin, c'est comme ça que je procède sur le mien.
        0
  3. gbinforme Messages postés 14930 Date d'inscription   Statut Contributeur Dernière intervention   4 744
     
    bonsoir galh, Furtif,

    Pour que les liens soient actifs après saisie ou collage :

    Menu outils / options / onglet modifications / cocher confirmation mise à jour automatique des liens
    0
    1. galh
       
      Bonjour gbinforme

      la case "confirmation mise à jour automatique des liens" étais bien cochée
      pour créer cette colonne j'utilise la formule suivante :
      ="http://mon site/images/jpeg/"&C2&"/"&D2&".jpg"
      les colonnes C2 et D2 contenant la référence et le N° de l'image
      ensuite je sélectionne ma colonne puis "copier" , "collage spécial" , "valeur" et OK
      et la les liens ne sont pas actif si je click dessus
      pour les rendre actif il faut doubleclick sur la cellule , quitter la cellule et revenir sur la cellule qui contient le lien et là elle est active et part bien sur le site et l'image qui va bien
      le souci il y a plus de 3000 cellules a faire
      d'ou ma question comment rendre active cette colonne
      Merci de vos réponse
      Galhs
      0
  4. gbinforme Messages postés 14930 Date d'inscription   Statut Contributeur Dernière intervention   4 744
     
    bonjour

    Je croyais t'avoir mis le mode d'emploi en lien mais il faut cliquer sur le lien pour avoir la page !

    Le numéro de colonne est un chiffre pas une lettre !
    G = 7
    après avoir copié ta macro, il faut que ta feuille à traiter soit active et tu fais alt+F8 puis exécuter.
    0
    1. galh
       
      Bonjour gbinforme
      Merci pour tes conseils éclairés
      le problème venait du G au lieu du 7
      Je n'ai pas bien assimiler la manip mais ça fonctionne c'est le but recherché
      Je stoc ta macro et le (alt + F8) pour la prochaine fois en espérant de ne pas avoir oublier la manip
      Encore merci
      Galh
      0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. gbinforme Messages postés 14930 Date d'inscription   Statut Contributeur Dernière intervention   4 744
     
    bonjour

    Je n'ai pas bien assimiler la manip

    En fait, tu crées ton lien avec une formule et donc la cellule ne contient que le texte du lien.

    Pour valider le lien, la macro utilise ton texte pour en faire un lien comme si tu utilisais la commande "insérer lien...".
    0
    1. galh
       
      Bonjour
      Ok l'explication
      Je pensais , mais a tord que le fait de mettre http:// suffisait pour que Excel le reconnaisse comme lien

      galh
      0
      1. bylka213 Messages postés 36 Statut Membre > galh
         
        Bonjour,
        J'aimerais faire un truc du même genre. j'ai une colonne ou j'ai des ID et je voudrais en cliquant dessus atteindre la page internet associée.
        l'adresse que je veux atteindre est du genre : https://www.hugedomains.com/domain_profile.cfm?d=nom2&e=com

        1080 est la valeur de la cellule A4 par exemple je voudrais automatiser cela c'est à dire que le lien hypertexte ci dessus aille lire la valeur de la cellule cliquée.


        Merci
        0
  7. gbinforme Messages postés 14930 Date d'inscription   Statut Contributeur Dernière intervention   4 744
     
    bonjour

    J'ai supposé que le texte complet de ton URL était en A1 (tu changes la cellule pour t'adapter) mais tu remplaces l'ID que tu veux paramétrer par "~" (tu peux choisir un autre valeur) et tumets ton ID en A4
    Private Sub Worksheet_SelectionChange(ByVal sel As Range)
    If Not Intersect(sel, [A4]) Is Nothing Then
        Dim chemin As String
        chemin = Replace([A1].Value, "~", sel.Value)
        ActiveWorkbook.FollowHyperlink Address:=chemin, NewWindow:=True
    End If
    End Sub
    

    Lorsque tu choisis A4 le lien assemblé est activé.

    Tu peux remplacer A4 par une plage à ta convenance.
    0
  8. bylka213 Messages postés 36 Statut Membre
     
    Bonjour Gbinforme, bonjour le fil,

    Je ne comprends pas très ce que tu as mis ci-dessus dasn adresse je mais "chemein tu me dit mais je mais le chemin avec quoi a la place d'un ID particulier et si je veux que toute la colonne "A" transforme l'ID présent dans chaque cellule en lien vers l'adresse internet du style https://www.hugedomains.com/domain_profile.cfm?d=nom2&e=com avec a la place du 1080 l'ID present dans la cellule cliquée.

    Merci
    0
  9. gbinforme Messages postés 14930 Date d'inscription   Statut Contributeur Dernière intervention   4 744
     
    bonjour

    Puisque tu veux mettre tes ID dans la colonne A, en B1 par exemple tu mets :
    https://www.hugedomains.com/domain_profile.cfm?d=nom2&e=com 

    Si tu mets ton canevas ailleurs, il suffit de changer dans la macro le code B1 par ta cellule à toi et en cliquant sur une cellule renseignée de la colonne A tu te connectes avec le lien et l'ID choisis.
    Private Sub Worksheet_SelectionChange(ByVal sel As Range)
    If Not Intersect(sel, [A:A]) Is Nothing  And sel.Value <> "" Then
        Dim chemin As String
        chemin = Replace([B1].Value, "1080", sel.Value)
        ActiveWorkbook.FollowHyperlink Address:=chemin, NewWindow:=True
    End If
    End Sub
    
    0