(VB Excel) lien hypertexte modifier
cs_Le Pivert Messages postés 8437 Statut Contributeur -
Bonjour,
J ai besoin de votre aide. J ai un doc Excel avec plein de lien hypertexte Cependant j aimerais changer tous les liens hypertexte pour ne garder qu'une partie du lien tout en ayant le lien exemple https://www.vinted.fr/femmes/vetements/sweats-and-sweats-a-capuche/pulls-dhiver/2164820440-pull-bleu-marine-strasse-paillette-zara Garder cette URL mais en gardant juste les mots après les chiffres (en gras) tous ca sur plusieurs lignes. Est ce que c est possible ( utiliser Microsoft visual basic peut etre??)
Windows / Chrome 105.0.0.0
3 réponses
-
yg_be Messages postés 23437 Date d'inscription Statut Contributeur Dernière intervention Ambassadeur 1 588
bonjour, ce n'est pas très clair, tu veux garder un url, ou le changer?
donne peut-être des exemples avant/après.
peux-tu également partager un fichier exemple?
-
Bonjour,
En fait sur Excel je fais un lien hypertexte donc il apparaît comme ça https://www.vinted.fr/femmes/vetements/sweats-and-sweats-a-capuche/pulls-dhiver/2164820440-pull-bleu-marine-strasse-paillette-zara
On peut donc modifier l apparence du lien hypertexte pour qu il affiche juste le mot pull-bleu-marine-strasse-paillette-zara et si on clique dessus on arrive sur la page du lien.
Sauf que j ai plus de 800 lien à modifier 1 par 1
Est ce qu il y a solution pour dire que je veux garder juste la fin de l URL (après les chiffres) en apparence mais que le lien hypertexte soit toujours valide, sur toutes mes liens
-
Bonjour,
ce qui donne:
Option Explicit 'https://excel.developpez.com/faq/?page=Hyperlink#ExtraireLiens Sub ExtractionLiensHypertextes() Dim Cell As Range Dim Ligne As Integer Dim chaine As String Dim num As String Dim lien As String 'Récupère le numéro de la dernière ligne non vide Ligne = Columns(1).SpecialCells(xlCellTypeLastCell).Row 'Boucle sur les cellules de la colonne A For Each Cell In Range("A1:A" & Ligne) If Cell.Hyperlinks.Count > 0 Then _ lien = Cell.Hyperlinks(1).Address chaine = tabSplit(lien) 'derniere occurence aprés / num = Split(chaine, "-")(0) 'caractere numerique chaine = Replace(chaine, num, "") 'enleve caractere numerique chaine = Mid(chaine, 2) 'enleve tiret Cell.Offset(0, 1).Select 'lien dans colonne B ActiveSheet.Hyperlinks.Add Anchor:=Selection, Address:=lien, TextToDisplay:=chaine Next Cell End Sub Public Function tabSplit(Macellule) Dim tbl1 tbl1 = Split(Macellule, "/") tabSplit = tbl1(UBound(tbl1)) End Functionvoilà