Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Hyperlien absolu relatif

5 réponses
Avatar
gary
Bonjour

Savez vous s'il est possible, et comment, de créer des liens relatifs.

Lorsque je donne seulement le nom du classeur (qui se trouve dans le même
répertoire), vba en fait un nom absolu (si je déplace le classeur avec les
liens, ça fonctionne toujours).

Or je voudrai envoyer le paquet (classeur sommaire + autre classeur) à
quelqu'un qui n'a pas accès à mon réseau : et donc avec des adresses
relatives.

En vba, j'ai essayé en spécifiant un chemin relatif
"\sousRepertoire\nomFichier.xls".
Mais j'obtiens quand même un chemin absolu.


Une idée ?
Merci

------------------ background -----
J'ajoute des hyperliens sur une cellule

-> soit avec une fonction excel :
=LIEN_HYPERTEXTE("[classeur1.xls]'feuil1'!A1";"xxxx")
-> soit en VBA
ActiveSheet.Hyperlinks.Add Anchor:=Cells(ligne, Colonne),
Address:=adressePrincipale, SubAddress:=adresseSecondaire,
TextToDisplay:=afficherTexte

5 réponses

Avatar
Daniel
Re.
Envoi-lui un kit d'installation :
une macro qui lui permettra de choisir le répertoire du fichier.
Daniel
"gary" a écrit dans le message de news:

Bonjour

Savez vous s'il est possible, et comment, de créer des liens relatifs.

Lorsque je donne seulement le nom du classeur (qui se trouve dans le même
répertoire), vba en fait un nom absolu (si je déplace le classeur avec les
liens, ça fonctionne toujours).

Or je voudrai envoyer le paquet (classeur sommaire + autre classeur) à
quelqu'un qui n'a pas accès à mon réseau : et donc avec des adresses
relatives.

En vba, j'ai essayé en spécifiant un chemin relatif
"sousRepertoirenomFichier.xls".
Mais j'obtiens quand même un chemin absolu.


Une idée ?
Merci

------------------ background -----
J'ajoute des hyperliens sur une cellule

-> soit avec une fonction excel :
=LIEN_HYPERTEXTE("[classeur1.xls]'feuil1'!A1";"xxxx")
-> soit en VBA
ActiveSheet.Hyperlinks.Add Anchor:Îlls(ligne, Colonne),
Address:­ressePrincipale, SubAddress:­resseSecondaire,
TextToDisplay:¯ficherTexte





Avatar
gary
bonne idée, mais je préfère éviter


Re.
Envoi-lui un kit d'installation :
une macro qui lui permettra de choisir le répertoire du fichier.
Daniel
"gary" a écrit dans le message de news:

Bonjour

Savez vous s'il est possible, et comment, de créer des liens relatifs.

Lorsque je donne seulement le nom du classeur (qui se trouve dans le même
répertoire), vba en fait un nom absolu (si je déplace le classeur avec les
liens, ça fonctionne toujours).

Or je voudrai envoyer le paquet (classeur sommaire + autre classeur) à
quelqu'un qui n'a pas accès à mon réseau : et donc avec des adresses
relatives.

En vba, j'ai essayé en spécifiant un chemin relatif
"sousRepertoirenomFichier.xls".
Mais j'obtiens quand même un chemin absolu.


Une idée ?
Merci

------------------ background -----
J'ajoute des hyperliens sur une cellule

-> soit avec une fonction excel :
=LIEN_HYPERTEXTE("[classeur1.xls]'feuil1'!A1";"xxxx")
-> soit en VBA
ActiveSheet.Hyperlinks.Add Anchor:Îlls(ligne, Colonne),
Address:­ressePrincipale, SubAddress:­resseSecondaire,
TextToDisplay:¯ficherTexte










Avatar
dunkelzahn
Hello,

Le plus simple serait de faire une fonction qui ré-analyse à
l'ouverture tes liens hypertexte en fonction de l'emplacement de ton
dossier

On 10 août, 12:10, gary wrote:
Bonjour

Savez vous s'il est possible, et comment, de créer des liens relatifs.

Lorsque je donne seulement le nom du classeur (qui se trouve dans le mê me
répertoire), vba en fait un nom absolu (si je déplace le classeur ave c les
liens, ça fonctionne toujours).

Or je voudrai envoyer le paquet (classeur sommaire + autre classeur) à
quelqu'un qui n'a pas accès à mon réseau : et donc avec des adresses
relatives.

En vba, j'ai essayé en spécifiant un chemin relatif
"sousRepertoirenomFichier.xls".
Mais j'obtiens quand même un chemin absolu.

Une idée ?
Merci

------------------ background -----
J'ajoute des hyperliens sur une cellule

-> soit avec une fonction excel :
=LIEN_HYPERTEXTE("[classeur1.xls]'feuil1'!A1";"xxxx")
-> soit en VBA
ActiveSheet.Hyperlinks.Add Anchor:Îlls(ligne, Colonne),
Address:­ressePrincipale, SubAddress:­resseSecondaire,
TextToDisplay:¯ficherTexte


Avatar
JB
Lien vers 'classeur1.xls' dans un sous-répertoire 'SousRep':

=LIEN_HYPERTEXTE("["&GAUCHE(CELLULE("filename";A1);TROUVE("[";CELLULE("fi lename";A1))-1)&"SousRep
Classeur1.xls]'Feuil1'!a1";"TexteAffiché")

Les noms du sous-répertoire et du classeur peuvent être dans des
cellules.

http://boisgontierjacques.free.fr/pages_site/lienshypertextes.htm

JB
http://boisgontierjacques.free.fr

On 10 août, 12:36, gary wrote:
bonne idée, mais je préfère éviter




Re.
Envoi-lui un kit d'installation :
une macro qui lui permettra de choisir le répertoire du fichier.
Daniel
"gary" a écrit dans le message de ne ws:

Bonjour

Savez vous s'il est possible, et comment, de créer des liens relati fs.

Lorsque je donne seulement le nom du classeur (qui se trouve dans le même
répertoire), vba en fait un nom absolu (si je déplace le classeur avec les
liens, ça fonctionne toujours).

Or je voudrai envoyer le paquet (classeur sommaire + autre classeur) à
quelqu'un qui n'a pas accès à mon réseau : et donc avec des adr esses
relatives.

En vba, j'ai essayé en spécifiant un chemin relatif
"sousRepertoirenomFichier.xls".
Mais j'obtiens quand même un chemin absolu.

Une idée ?
Merci

------------------ background -----
J'ajoute des hyperliens sur une cellule

-> soit avec une fonction excel :
=LIEN_HYPERTEXTE("[classeur1.xls]'feuil1'!A1";"xxxx")
-> soit en VBA
ActiveSheet.Hyperlinks.Add Anchor:Îlls(ligne, Colonne),
Address:­ressePrincipale, SubAddress:­resseSecondaire,
TextToDisplay:¯ficherTexte- Masquer le texte des messages préc édents -



- Afficher le texte des messages précédents -




Avatar
gary
Merci à tous

Hyperlinks.add

va bien ajouter un lien relatif si je préciser un sous répertoire
address:="moncheminmonfichier.xls"

j'ai du m'embrouiller dans mes premiers tests.

je n'ai pas testé sans sous répertoire, mais je suppose que c'est la même
chose.

j'ai remarqué par ailleurs, qu'un nom d'onglet "légal" contenant des espaces
donnera une adresse générée avec address:="mon fichier.xls" non
opérationnelle.
Ce qui n'est pas le cas si on le fait en utilisant les menus.

Par ailleurs, pas question de lier vers un onglet si on ne choisit pas
également une cellule (ou un plage) de référence.

L'hyperlien tel qu'il est affiché en infobulle dans l'application n'est pas
la syntaxe à utiliser, il faut bien utiliser address et subaddress. la
syntaxe de la subaddress doit être du type : nomOnglet!A1

Voilà,
merci à tous