Recuperer texte d'un lien hypertext

fifounet

XLDnaute Occasionnel
Bonjour le forum
Comment récuperer avec une petite macro le texte d'un lien web de la cellule A1 dans B1 et non la valeur de A1
exemple A1 "toto" avec lien vers "www.toto.etc" en B1 je veux "www.toto.etc"
Merci de votre aide
fifounet
 

Fred0o

XLDnaute Barbatruc
Re : Recuperer texte d'un lien hypertext

Bonjour fifounet,

Voici une fonction personnalisée :
VB:
Function Lien(c As Range) As String
    Lien = c.Hyperlinks.Item(1).Address
End Function

à utiliser comme ceci :
Code:
=Lien(A1)

Elle te renverra l'adresse du lien contenu dans la cellule A1.

A+
 

fifounet

XLDnaute Occasionnel
Re : Recuperer texte d'un lien hypertext

Merci fredoo ça marche,
Est-il possible de récupérer uniquement une zone de texte dans ce lien
exemple 10 caractères du texte à partir du 40eme caractere en partant de la gauche
directement dans la macro sans passer par une formule dans une autre cellule.
merci
 

Fred0o

XLDnaute Barbatruc
Re : Recuperer texte d'un lien hypertext

Re-bonsoir fifounet,

Oui, c'est possible !

Pour cela, utilises la formule VBA :
VB:
Right(Left(c.Hyperlinks.Item(1).Address,50),10)

Celle_ci utilise Left et Right qui fonctionne exactement comme les formules EXCEL.

A+
 

fifounet

XLDnaute Occasionnel
Re : Recuperer texte d'un lien hypertext

Super fredoo
sauf que je viens de m'apercevoir qu'il y a des fois moins de 10 caractères
par contre ça commence tjrs à 50 et il y a le signe % apres le dernier caractère voulu
le but serait de récuperer la chaine de caracteres entre le 50eme et le signe % suivant
c'est peut etre plus compliqué et est ce faisable?
merci encore pour ton aide
 

Fred0o

XLDnaute Barbatruc
Re : Recuperer texte d'un lien hypertext

Re-bonsoir,

Cela fonctionne chez moi. Si ce code ne fonctionne toujours pas, postes un fichier exemple avec ce que tu as et ce que tu souhaites obtenir.

VB:
Function lien(c As Range) As String
    Dim tt
    tt = c.Hyperlinks.Item(1).Address
    lien = Mid(tt, 50, WorksheetFunction.Find("%", tt, 1) - 50)
End Function

A+
 

fifounet

XLDnaute Occasionnel
Re : Recuperer texte d'un lien hypertext

Bonjour
Merci pour ton aide fredoo, je n'ai pu m'y recoller que ce matin.
Effectivement ça fonctionne bien s'il n'y a pas de signe % avant le texte à récupérer
voila ici le texte à récupérer est 999999:
ttp://ww.toto.com/essai/fichier/php3/toto.php?name=k&session=precision%3D999999%26reqid%3D200&cler=LEtbZGotByClQ
J'espère que je me fais bien comprendre!
a+
 

Fred0o

XLDnaute Barbatruc
Re : Recuperer texte d'un lien hypertext

Bonjour,

Pour éviter de faire encore moult allers-retours infructueux, peux-tu me mettre dans un fichier EXCEL exemple, une liste de plusieurs liens avec le texte que tu souhaites récupérer et les conditions qui expliquent pourquoi c'est ce texte là que tu veux. Ainsi, je pourrais te faire une réponse adaptée.

A+
 

Fred0o

XLDnaute Barbatruc
Re : Recuperer texte d'un lien hypertext

Re-bonjour,

d'après l'exemple fourni, voici le code à utiliser. Je pense qu'il te faudra adapter la valeur 74 à tes vrais liens.
VB:
Function lien(c As Range) As String
    Dim tt
    tt = c.Hyperlinks.Item(1).Address
    tt = WorksheetFunction.Substitute(tt, "%3D", "&")
    lien = Mid(tt, 74, WorksheetFunction.Find("&", tt, 74) - 74)
End Function
A+
 

Discussions similaires

Statistiques des forums

Discussions
312 213
Messages
2 086 302
Membres
103 174
dernier inscrit
OBUTT