Kerstine a une feuille de calcul avec de nombreux hyperliens différents. Elle se demande s’il existe un moyen de ne remplacer qu’une partie de chaque lien.

Par exemple, elle pourrait souhaiter changer n’importe quelle instance de http://www.mysite.com/ en c: / documents / mycopy /. S’il y a quelque chose de plus dans les liens, alors cette partie doit rester. Ainsi, par exemple, si le lien d’origine est http://www.mysite.com/thispage.html, il sera remplacé par c: /documents/mycopy/thispage.html.

Cela peut être facilement fait avec une macro. La raison en est que les hyperliens peuvent être examinés et modifiés à l’aide de fonctions de chaîne régulières.

La macro suivante fournit un moyen simple de résoudre le problème.

Sub EditHyperlinks()

Dim lnkH As Hyperlink     Dim sOld As String     Dim sNew As String

sOld = "http://www.mysite.com"

sNew = "c:/documents/mycopy/"



For Each lnkH In ActiveSheet.Hyperlinks         lnkH.Address = Replace(lnkH.Address, sOld, sNew)

lnkH.TextToDisplay = Replace(lnkH.TextToDisplay, sOld, sNew)

Next End Sub

Cette routine parcourt tous les hyperliens de la feuille de calcul actuelle et apporte des modifications, si nécessaire, à chacun d’eux. Le lien hypertexte et le texte affiché sont modifiés, le cas échéant. Tout ce que vous avez à faire est d’apporter des modifications aux chaînes sOld et sNew pour spécifier ce que vous recherchez et par quoi vous voulez le remplacer.

Vous devez noter que cette macro utilise la fonction Remplacer, qui est intégrée aux versions ultérieures de VBA. Si vous utilisez une version plus ancienne qui n’inclut pas la fonction Remplacer (vous le saurez car vous obtiendrez une erreur lorsque vous essayez d’activer la macro), vous devrez créer votre propre fonction Remplacer qui remplace une partie d’un chaîne avec un autre. Ces fonctions ont été abordées dans d’autres numéros de ExcelTips.

_Note: _

Si vous souhaitez savoir comment utiliser les macros décrites sur cette page (ou sur toute autre page des sites ExcelTips), j’ai préparé une page spéciale qui comprend des informations utiles.

lien: / excelribbon-ExcelTipsMacros [Cliquez ici pour ouvrir cette page spéciale dans un nouvel onglet de navigateur].

ExcelTips est votre source pour une formation Microsoft Excel rentable.

Cette astuce (3358) s’applique à Microsoft Excel 97, 2000, 2002 et 2003. Vous pouvez trouver une version de cette astuce pour l’interface ruban d’Excel (Excel 2007 et versions ultérieures) ici:

link: / excelribbon-Changing_Portions_of_Many_Hyperlinks [Modification de portions de nombreux hyperliens].