Bonjour,
J'espère ne pas faire de doublon, j'ai cherché un peu partout mais n'ai pas trouvé de solution à mon problème, que voici...
J'ai créé des liens hypertextes grâce à une macro (
macro_A) en VBA en utilisant le code :
ActiveSheet.Hyperlinks.Add Anchor:=Selection, Address:="", SubAddress:="yyy"
A partir d'une autre macro (
macro_B), je souhaite suivre certains de ces liens en VBA en utilisant le code :
ActiveSheet.Range("B7").Hyperlinks(1).Follow NewWindow:=False
Mon problème est que le code pour suivre le lien fonctionne lorsqu'il est dans la même macro qui a créé les liens, mais ne fonctionnent pas lorsqu'il est dans une autre macro.
Précisions :
- Les liens pointent vers un autre onglet du même fichier.
- Les liens hypertextes sont bien créés, ils existent et fonctionnent en direct dans le fichier.
- J'ai fait un test avec ActiveSheet.Hyperlinks.Count dans Macro_B pour m'assurer qu'une fois sortie de Macro_A et entré dans Macro_B, mes liens existaient toujours (pour VBA), et le résultat et positif.
- Macro_A et Macro_B sont des Public Sub
Solution de contournement :
ActiveSheet.Hyperlinks.Add Anchor:=Range("B7"), Address:=ActiveSheet.Range("B7").Hyperlinks(1).Address, SubAddress:=ActiveSheet.Range("B7").Hyperlinks(1).SubAddress
ActiveSheet.Range("B7").Hyperlinks(1).Follow NewWindow:=False
Pour l'instant, je me contente de cette solution de contournement, qui recréé le lien existant dans la macro qui demande à le suivre. Mais cela alourdi considérablement mon code (étant donné que cette partie est inclue dans une boucle qui peut compter jusqu'à 100 éléments pour l'instant). Et puis c'est idiot de recréer un lien existant !
Si quelqu'un a une idée pour éviter cette hérésie ou m'expliquer ce que j'ai loupé pour qu'Excel ne suive pas un lien créé par une autre macro.
J'espère avoir exposé mon problème clairement.
Merci d'avance.