SOS Excel ?

Résolu
Bonjour,

j'ai besoin d'1 coup de pouce qui me serait grave utile :

dans excel, j'ai une liste de mots tous avec des liens hypertextes et j'aimerai extraire et afficher les url dans une colonne pour avoir l'adresse complète des liens hypertextes.

Pour l'instant je me tape 1 par 1 d'ouvrir le menu lien hypertexte de chaque mot pour récupérer l'adresse url de chaque mot et ça me prend un temps de ouf. Y a-t-il un sauveur parmi vous?
Configuration: Windows XP
Firefox 3.0.8

4 réponses

  1. Modérateur
    Bon, tu appuies sur Alt+F11 pour accéder au VBE.
    Tu fais : Insertion, Module
    Dans le nouveau Module, tu colles la macro que je t'ai donnée et tu la personnalises en fonction de l'endroit où se trouve tes données (nom de la feuille, et plage).
    Tu exécutes la macro : depuis ta feuille Excel : Alt+F8, tu sélectionnes la macro, puis Exécuter.

    J'ai supposé que chacune des cellules contient un lien hypertexte... Si ce n'est pas le cas, faudra améliorer le code...

    m@rina
    18
    1. Bonjour m@rina,

      j'avais besoin de cette macro, mais elle bogue (erreur exécution 9) à la ligne :
      c.Offset(0, 1).Value = c.Hyperlinks(1).Address


      Que faire?
      0
    2. Re-bonjour,

      J'ai finalement trouvé une autre macro :

      Sub ExtractionLiensHypertextes()
      Dim Cell As Range
      On Error Resume Next
      For Each Cell In Range("A1:A" & Range("A65536").End(xlUp).Row)
      Cell.Offset(0, 1) = Cell.Hyperlinks(1).Address
      Next Cell
      End Sub


      (Trouvée à : https://www.excel-downloads.com/threads/extraire-des-liens-hypertextes.19138/

      Elle fonctionne bien.
      Je ne sais pas pourquoi l'autre refusait de fonctionner???

      (Merci quand même!)
      0
  2. Modérateur
    Bonjour

    Voici un macro toute simple. Supposant que tes liens se trouvent dans la place A1:A10 de l'onglet "Feuil1" et qu'on mette les adresses des liens dans les cellules correspondantes de la colonne B :

    Sub nadege()
    Dim c As Range
    For Each c In Sheets("Feuil1").Range("A1:A10").Cells
    c.Offset(0, 1).Value = c.Hyperlinks(1).Address
    Next
    End Sub


    m@rina

    9
    1. C'est parfait, c'est exactement ce que je voulais.
      Merci beaucoup !
      1
      1. merci d'avoir répondu si rapidement. Juste, je la met où cette formule ? Je connais pas trop tout ce qui est macro...

        Merci d'avance
        0