Liens Hypertexte

Bonjour à tous,

Je viens vous demander de l'aide.

Sur une feuille Excel, dans certaines cellules, j'ai un lien "Hypertexte", qui m'affiche une page Word. tous les fichiers Word sont sur le disque D.

Tout fonctionnait bien, jusqu'au déplacement des Dossiers ou se trouvent les fichiers Word.docx

Le répertoire ou était stockés les fichiers Word : Data (D:) > Courriers > Réponses > fichiers.docx

Le répertoire ou sont stockés les fichiers Word : Data (D:) > Documents > Courriers > Réponses > fichiers.docx

J'ai environ 1000 liens "Hypertexte".

comment peut-on modifier tous les liens "Hypertexte" en ajoutant "Documents" dans l'adresse du lien autrement que lien par lien.

Y a-t-il une solution ?

Je vous remercie de votre aide.

Claude

Bonjour GVQ,

Un lien hypertexte comprend deux parties, le texte affiché et le lien lui-même.

Un essai en vba :

Il restera à adapter la plage à traiter.

Sub ModifierLienHypertexteEtTexteAffiche()
    Dim cell As Range
    Dim plage As Range
    Dim AncienChemin As String
    Dim nouveauChemin As String
    Dim adresseActuelle As String
    Dim nouvelleAdresse As String
    Dim texteActuel As String
    Dim nouveauTexte As String

    ' Définir les parties de l'URL et du texte à remplacer
    AncienChemin = "\Courriers\R"   ' je n'ai pas testé sur un chemin comprenant un caractère accentué "\Courriers\Réponses..."
    nouveauChemin = "\Documents\Courriers\R"

    ' Définir la plage de cellules à modifier (par exemple, A1 à A10)
    Set plage = ActiveSheet.Range("A1:A10") 

    ' Parcourir chaque cellule dans la plage
    For Each cell In plage
        ' Vérifier si la cellule contient un lien hypertexte
        If cell.Hyperlinks.Count > 0 Then
            ' Modifier l'adresse du lien hypertexte
            adresseActuelle = cell.Hyperlinks(1).Address
            nouvelleAdresse = Replace(adresseActuelle, AncienChemin, nouveauChemin)
            cell.Hyperlinks(1).Address = nouvelleAdresse

            ' Modifier le texte affiché du lien hypertexte
            texteActuel = cell.Hyperlinks(1).TextToDisplay
            nouveauTexte = Replace(texteActuel, AncienChemin, nouveauChemin)
            cell.Hyperlinks(1).TextToDisplay = nouveauTexte
        End If
    Next cell

    MsgBox "Les liens hypertextes et les textes affichés ont été modifiés avec succès."
End Sub

Bizz

Merci Bizarre, je vais me pencher sur votre proposition.

Mais n'y a-t-il pas d'autre(s) solution(s) que le vba ?

Claude

Voilà ce que j'ai trouvé en fouillant sur Internet.

  1. Enregistrez votre document excel au format « Feuille de calcul XML 2003 »
  2. Fermez ce document
  3. Ouvrez ce nouveau fichier XML dans un éditeur de texte (avec notepad++ par exemple)
  4. Recherchez et remplacer votre URL à modifier (Ctrl + H)
  5. Enregistrez votre fichier
  6. Ouvrez le avec Excel
  7. Enregistrez le au format Excel standard

j'ai modifié la chaine du lien hypertexte en ajoutant le nom du dossier manquant. Et ça à l'air de fonctionner

si ça peut servir !.....

Bonjour GVQ,

Je ne connaissais pas cette façon de faire; je note.

Bizz

Encore merci de vous être penché sur mon problème, c'est toujours sympa d'être aidé.

Rechercher des sujets similaires à "liens hypertexte"