Bonsoir à tous.
Mon classeur comporte une feuille "modèle" que je duplique par macro (une
copie de ce "modèle" pour chaque jour du mois).
J'utilise une plage relativement étendue, et ai choisi les liens hypertexte
pour me déplacer d'un endroit à un autre.
Sur "modèle", aucun problème.
Par contre, sur les onglets qui sont créés par copies de "modèle", (nommés
01.01.05, 02.01.05, etc...), les liens hypertexte sont bien dupliqués, mais
continuent de pointer sur les plages de "modèle".
J'ai une quarantaine de liens par onglet, 31 onglets, et me vois mal tout
réaffecter "à la mimine".
L'un d'entre vous a-t'il la solution, un lien à m'indiquer, un début de
piste ?
Je vous en remercie sincèrement par avance,
Et profite de l'occasion pour vous souhaiter ainsi qu' à vos proches et à
tous ceux qui vous sont chers...
Une Bonne et Heureuse Année 2005.
Patrick.
Version : Excel 2002, Windows XP.
Bonsoir à tous.
Mon classeur comporte une feuille "modèle" que je duplique par macro (une
copie de ce "modèle" pour chaque jour du mois).
J'utilise une plage relativement étendue, et ai choisi les liens hypertexte
pour me déplacer d'un endroit à un autre.
Sur "modèle", aucun problème.
Par contre, sur les onglets qui sont créés par copies de "modèle", (nommés
01.01.05, 02.01.05, etc...), les liens hypertexte sont bien dupliqués, mais
continuent de pointer sur les plages de "modèle".
J'ai une quarantaine de liens par onglet, 31 onglets, et me vois mal tout
réaffecter "à la mimine".
L'un d'entre vous a-t'il la solution, un lien à m'indiquer, un début de
piste ?
Je vous en remercie sincèrement par avance,
Et profite de l'occasion pour vous souhaiter ainsi qu' à vos proches et à
tous ceux qui vous sont chers...
Une Bonne et Heureuse Année 2005.
Patrick.
Version : Excel 2002, Windows XP.
Bonsoir à tous.
Mon classeur comporte une feuille "modèle" que je duplique par macro (une
copie de ce "modèle" pour chaque jour du mois).
J'utilise une plage relativement étendue, et ai choisi les liens hypertexte
pour me déplacer d'un endroit à un autre.
Sur "modèle", aucun problème.
Par contre, sur les onglets qui sont créés par copies de "modèle", (nommés
01.01.05, 02.01.05, etc...), les liens hypertexte sont bien dupliqués, mais
continuent de pointer sur les plages de "modèle".
J'ai une quarantaine de liens par onglet, 31 onglets, et me vois mal tout
réaffecter "à la mimine".
L'un d'entre vous a-t'il la solution, un lien à m'indiquer, un début de
piste ?
Je vous en remercie sincèrement par avance,
Et profite de l'occasion pour vous souhaiter ainsi qu' à vos proches et à
tous ceux qui vous sont chers...
Une Bonne et Heureuse Année 2005.
Patrick.
Version : Excel 2002, Windows XP.
Il y a dans Exelabo rubriques outils de très beaux exemples :
http://www.excelabo.net/xl/outils.php#sommairehyperlien
A défaut fait rechercher dans Exelabo sur le mot hypertexte
à+twinley
Patrick BASTARD wrote:Bonsoir à tous.
Mon classeur comporte une feuille "modèle" que je duplique par macro
(une copie de ce "modèle" pour chaque jour du mois).
J'utilise une plage relativement étendue, et ai choisi les liens
hypertexte pour me déplacer d'un endroit à un autre.
Sur "modèle", aucun problème.
Par contre, sur les onglets qui sont créés par copies de "modèle",
(nommés 01.01.05, 02.01.05, etc...), les liens hypertexte sont bien
dupliqués, mais continuent de pointer sur les plages de "modèle".
J'ai une quarantaine de liens par onglet, 31 onglets, et me vois mal
tout réaffecter "à la mimine".
L'un d'entre vous a-t'il la solution, un lien à m'indiquer, un début
de piste ?
Je vous en remercie sincèrement par avance,
Et profite de l'occasion pour vous souhaiter ainsi qu' à vos proches
et à tous ceux qui vous sont chers...
Une Bonne et Heureuse Année 2005.
Patrick.
Version : Excel 2002, Windows XP.
Il y a dans Exelabo rubriques outils de très beaux exemples :
http://www.excelabo.net/xl/outils.php#sommairehyperlien
A défaut fait rechercher dans Exelabo sur le mot hypertexte
à+twinley
Patrick BASTARD wrote:
Bonsoir à tous.
Mon classeur comporte une feuille "modèle" que je duplique par macro
(une copie de ce "modèle" pour chaque jour du mois).
J'utilise une plage relativement étendue, et ai choisi les liens
hypertexte pour me déplacer d'un endroit à un autre.
Sur "modèle", aucun problème.
Par contre, sur les onglets qui sont créés par copies de "modèle",
(nommés 01.01.05, 02.01.05, etc...), les liens hypertexte sont bien
dupliqués, mais continuent de pointer sur les plages de "modèle".
J'ai une quarantaine de liens par onglet, 31 onglets, et me vois mal
tout réaffecter "à la mimine".
L'un d'entre vous a-t'il la solution, un lien à m'indiquer, un début
de piste ?
Je vous en remercie sincèrement par avance,
Et profite de l'occasion pour vous souhaiter ainsi qu' à vos proches
et à tous ceux qui vous sont chers...
Une Bonne et Heureuse Année 2005.
Patrick.
Version : Excel 2002, Windows XP.
Il y a dans Exelabo rubriques outils de très beaux exemples :
http://www.excelabo.net/xl/outils.php#sommairehyperlien
A défaut fait rechercher dans Exelabo sur le mot hypertexte
à+twinley
Patrick BASTARD wrote:Bonsoir à tous.
Mon classeur comporte une feuille "modèle" que je duplique par macro
(une copie de ce "modèle" pour chaque jour du mois).
J'utilise une plage relativement étendue, et ai choisi les liens
hypertexte pour me déplacer d'un endroit à un autre.
Sur "modèle", aucun problème.
Par contre, sur les onglets qui sont créés par copies de "modèle",
(nommés 01.01.05, 02.01.05, etc...), les liens hypertexte sont bien
dupliqués, mais continuent de pointer sur les plages de "modèle".
J'ai une quarantaine de liens par onglet, 31 onglets, et me vois mal
tout réaffecter "à la mimine".
L'un d'entre vous a-t'il la solution, un lien à m'indiquer, un début
de piste ?
Je vous en remercie sincèrement par avance,
Et profite de l'occasion pour vous souhaiter ainsi qu' à vos proches
et à tous ceux qui vous sont chers...
Une Bonne et Heureuse Année 2005.
Patrick.
Version : Excel 2002, Windows XP.
Bonsoir, *twinley*
J'ai sauté sur ton post %
avec l'intéret que tu imagines :
Pour être court, j'ai omis de préciser que mon premier réflexe avant de
poster a été une recherche sur le site de Flo, et les liens qui y
figurent,
le deuxième une recherche sur Google, mais sans succès dans les deux cas.
Il est vrai que ce problème est un peu particulier.
En tous cas, merci de ton aide.
A suivre ?...
Bien cordialement,
Patrick.
Il y a dans Exelabo rubriques outils de très beaux exemples :
http://www.excelabo.net/xl/outils.php#sommairehyperlien
A défaut fait rechercher dans Exelabo sur le mot hypertexte
à+twinley
Patrick BASTARD wrote:Bonsoir à tous.
Mon classeur comporte une feuille "modèle" que je duplique par macro
(une copie de ce "modèle" pour chaque jour du mois).
J'utilise une plage relativement étendue, et ai choisi les liens
hypertexte pour me déplacer d'un endroit à un autre.
Sur "modèle", aucun problème.
Par contre, sur les onglets qui sont créés par copies de "modèle",
(nommés 01.01.05, 02.01.05, etc...), les liens hypertexte sont bien
dupliqués, mais continuent de pointer sur les plages de "modèle".
J'ai une quarantaine de liens par onglet, 31 onglets, et me vois mal
tout réaffecter "à la mimine".
L'un d'entre vous a-t'il la solution, un lien à m'indiquer, un début
de piste ?
Je vous en remercie sincèrement par avance,
Et profite de l'occasion pour vous souhaiter ainsi qu' à vos proches
et à tous ceux qui vous sont chers...
Une Bonne et Heureuse Année 2005.
Patrick.
Version : Excel 2002, Windows XP.
Bonsoir, *twinley*
J'ai sauté sur ton post %23JsGmeq7EHA.3856@tk2msftngp13.phx.gbl
avec l'intéret que tu imagines :
Pour être court, j'ai omis de préciser que mon premier réflexe avant de
poster a été une recherche sur le site de Flo, et les liens qui y
figurent,
le deuxième une recherche sur Google, mais sans succès dans les deux cas.
Il est vrai que ce problème est un peu particulier.
En tous cas, merci de ton aide.
A suivre ?...
Bien cordialement,
Patrick.
Il y a dans Exelabo rubriques outils de très beaux exemples :
http://www.excelabo.net/xl/outils.php#sommairehyperlien
A défaut fait rechercher dans Exelabo sur le mot hypertexte
à+twinley
Patrick BASTARD wrote:
Bonsoir à tous.
Mon classeur comporte une feuille "modèle" que je duplique par macro
(une copie de ce "modèle" pour chaque jour du mois).
J'utilise une plage relativement étendue, et ai choisi les liens
hypertexte pour me déplacer d'un endroit à un autre.
Sur "modèle", aucun problème.
Par contre, sur les onglets qui sont créés par copies de "modèle",
(nommés 01.01.05, 02.01.05, etc...), les liens hypertexte sont bien
dupliqués, mais continuent de pointer sur les plages de "modèle".
J'ai une quarantaine de liens par onglet, 31 onglets, et me vois mal
tout réaffecter "à la mimine".
L'un d'entre vous a-t'il la solution, un lien à m'indiquer, un début
de piste ?
Je vous en remercie sincèrement par avance,
Et profite de l'occasion pour vous souhaiter ainsi qu' à vos proches
et à tous ceux qui vous sont chers...
Une Bonne et Heureuse Année 2005.
Patrick.
Version : Excel 2002, Windows XP.
Bonsoir, *twinley*
J'ai sauté sur ton post %
avec l'intéret que tu imagines :
Pour être court, j'ai omis de préciser que mon premier réflexe avant de
poster a été une recherche sur le site de Flo, et les liens qui y
figurent,
le deuxième une recherche sur Google, mais sans succès dans les deux cas.
Il est vrai que ce problème est un peu particulier.
En tous cas, merci de ton aide.
A suivre ?...
Bien cordialement,
Patrick.
Il y a dans Exelabo rubriques outils de très beaux exemples :
http://www.excelabo.net/xl/outils.php#sommairehyperlien
A défaut fait rechercher dans Exelabo sur le mot hypertexte
à+twinley
Patrick BASTARD wrote:Bonsoir à tous.
Mon classeur comporte une feuille "modèle" que je duplique par macro
(une copie de ce "modèle" pour chaque jour du mois).
J'utilise une plage relativement étendue, et ai choisi les liens
hypertexte pour me déplacer d'un endroit à un autre.
Sur "modèle", aucun problème.
Par contre, sur les onglets qui sont créés par copies de "modèle",
(nommés 01.01.05, 02.01.05, etc...), les liens hypertexte sont bien
dupliqués, mais continuent de pointer sur les plages de "modèle".
J'ai une quarantaine de liens par onglet, 31 onglets, et me vois mal
tout réaffecter "à la mimine".
L'un d'entre vous a-t'il la solution, un lien à m'indiquer, un début
de piste ?
Je vous en remercie sincèrement par avance,
Et profite de l'occasion pour vous souhaiter ainsi qu' à vos proches
et à tous ceux qui vous sont chers...
Une Bonne et Heureuse Année 2005.
Patrick.
Version : Excel 2002, Windows XP.
Pour avoir la liste des hyperliens de la feuille active:
For Each xlink In ActiveSheet.Hyperlinks.
...
next
Pour modifier le premier hyperlien:
activesheet.Hyperlinks(1).SubAddress = ActiveSheet.Name & "!A1"
Amicalement
Pour avoir la liste des hyperliens de la feuille active:
For Each xlink In ActiveSheet.Hyperlinks.
...
next
Pour modifier le premier hyperlien:
activesheet.Hyperlinks(1).SubAddress = ActiveSheet.Name & "!A1"
Amicalement
Pour avoir la liste des hyperliens de la feuille active:
For Each xlink In ActiveSheet.Hyperlinks.
...
next
Pour modifier le premier hyperlien:
activesheet.Hyperlinks(1).SubAddress = ActiveSheet.Name & "!A1"
Amicalement
Bonjour Patrick.
Pour avoir la liste des hyperliens de la feuille active:
For Each xlink In ActiveSheet.Hyperlinks.
...
next
Pour modifier le premier hyperlien:
activesheet.Hyperlinks(1).SubAddress = ActiveSheet.Name & "!A1"
Amicalement
"Patrick BASTARD" wrote in
message news:Bonsoir, *twinley*
J'ai sauté sur ton post %
avec l'intéret que tu imagines :
Pour être court, j'ai omis de préciser que mon premier réflexe avant
de poster a été une recherche sur le site de Flo, et les liens qui y
figurent, le deuxième une recherche sur Google, mais sans succès
dans les deux cas.
Il est vrai que ce problème est un peu particulier.
En tous cas, merci de ton aide.
A suivre ?...
Bien cordialement,
Patrick.
Il y a dans Exelabo rubriques outils de très beaux exemples :
http://www.excelabo.net/xl/outils.php#sommairehyperlien
A défaut fait rechercher dans Exelabo sur le mot hypertexte
à+twinley
Patrick BASTARD wrote:Bonsoir à tous.
Mon classeur comporte une feuille "modèle" que je duplique par
macro (une copie de ce "modèle" pour chaque jour du mois).
J'utilise une plage relativement étendue, et ai choisi les liens
hypertexte pour me déplacer d'un endroit à un autre.
Sur "modèle", aucun problème.
Par contre, sur les onglets qui sont créés par copies de "modèle",
(nommés 01.01.05, 02.01.05, etc...), les liens hypertexte sont bien
dupliqués, mais continuent de pointer sur les plages de "modèle".
J'ai une quarantaine de liens par onglet, 31 onglets, et me vois
mal tout réaffecter "à la mimine".
L'un d'entre vous a-t'il la solution, un lien à m'indiquer, un
début de piste ?
Je vous en remercie sincèrement par avance,
Et profite de l'occasion pour vous souhaiter ainsi qu' à vos
proches et à tous ceux qui vous sont chers...
Une Bonne et Heureuse Année 2005.
Patrick.
Version : Excel 2002, Windows XP.
Bonjour Patrick.
Pour avoir la liste des hyperliens de la feuille active:
For Each xlink In ActiveSheet.Hyperlinks.
...
next
Pour modifier le premier hyperlien:
activesheet.Hyperlinks(1).SubAddress = ActiveSheet.Name & "!A1"
Amicalement
"Patrick BASTARD" <pasdespambastardp@freepasdespam.fr> wrote in
message news:eZaI04q7EHA.824@TK2MSFTNGP11.phx.gbl...
Bonsoir, *twinley*
J'ai sauté sur ton post %23JsGmeq7EHA.3856@tk2msftngp13.phx.gbl
avec l'intéret que tu imagines :
Pour être court, j'ai omis de préciser que mon premier réflexe avant
de poster a été une recherche sur le site de Flo, et les liens qui y
figurent, le deuxième une recherche sur Google, mais sans succès
dans les deux cas.
Il est vrai que ce problème est un peu particulier.
En tous cas, merci de ton aide.
A suivre ?...
Bien cordialement,
Patrick.
Il y a dans Exelabo rubriques outils de très beaux exemples :
http://www.excelabo.net/xl/outils.php#sommairehyperlien
A défaut fait rechercher dans Exelabo sur le mot hypertexte
à+twinley
Patrick BASTARD wrote:
Bonsoir à tous.
Mon classeur comporte une feuille "modèle" que je duplique par
macro (une copie de ce "modèle" pour chaque jour du mois).
J'utilise une plage relativement étendue, et ai choisi les liens
hypertexte pour me déplacer d'un endroit à un autre.
Sur "modèle", aucun problème.
Par contre, sur les onglets qui sont créés par copies de "modèle",
(nommés 01.01.05, 02.01.05, etc...), les liens hypertexte sont bien
dupliqués, mais continuent de pointer sur les plages de "modèle".
J'ai une quarantaine de liens par onglet, 31 onglets, et me vois
mal tout réaffecter "à la mimine".
L'un d'entre vous a-t'il la solution, un lien à m'indiquer, un
début de piste ?
Je vous en remercie sincèrement par avance,
Et profite de l'occasion pour vous souhaiter ainsi qu' à vos
proches et à tous ceux qui vous sont chers...
Une Bonne et Heureuse Année 2005.
Patrick.
Version : Excel 2002, Windows XP.
Bonjour Patrick.
Pour avoir la liste des hyperliens de la feuille active:
For Each xlink In ActiveSheet.Hyperlinks.
...
next
Pour modifier le premier hyperlien:
activesheet.Hyperlinks(1).SubAddress = ActiveSheet.Name & "!A1"
Amicalement
"Patrick BASTARD" wrote in
message news:Bonsoir, *twinley*
J'ai sauté sur ton post %
avec l'intéret que tu imagines :
Pour être court, j'ai omis de préciser que mon premier réflexe avant
de poster a été une recherche sur le site de Flo, et les liens qui y
figurent, le deuxième une recherche sur Google, mais sans succès
dans les deux cas.
Il est vrai que ce problème est un peu particulier.
En tous cas, merci de ton aide.
A suivre ?...
Bien cordialement,
Patrick.
Il y a dans Exelabo rubriques outils de très beaux exemples :
http://www.excelabo.net/xl/outils.php#sommairehyperlien
A défaut fait rechercher dans Exelabo sur le mot hypertexte
à+twinley
Patrick BASTARD wrote:Bonsoir à tous.
Mon classeur comporte une feuille "modèle" que je duplique par
macro (une copie de ce "modèle" pour chaque jour du mois).
J'utilise une plage relativement étendue, et ai choisi les liens
hypertexte pour me déplacer d'un endroit à un autre.
Sur "modèle", aucun problème.
Par contre, sur les onglets qui sont créés par copies de "modèle",
(nommés 01.01.05, 02.01.05, etc...), les liens hypertexte sont bien
dupliqués, mais continuent de pointer sur les plages de "modèle".
J'ai une quarantaine de liens par onglet, 31 onglets, et me vois
mal tout réaffecter "à la mimine".
L'un d'entre vous a-t'il la solution, un lien à m'indiquer, un
début de piste ?
Je vous en remercie sincèrement par avance,
Et profite de l'occasion pour vous souhaiter ainsi qu' à vos
proches et à tous ceux qui vous sont chers...
Une Bonne et Heureuse Année 2005.
Patrick.
Version : Excel 2002, Windows XP.
Bonsoir Patrick,
Pour parcourir une collection, il y a la boucle For Each qui est bien
pratique.
Dans tes hyperliens, tu as dans chacune des feuilles obtenues par
copie une liaison vers la feuille copiée : au lieu que le lien pointe
vers la cellule A8, il pointe vers "Feuil1!A8", "Feuil1" étant à
remplacer par le nom de ta feuille modèle.
2 boucles imbriquées (une pour les feuilles, l'autre pour les
hyperliens au sein de chaque feuille) permettent de remplacer les
liens vers la feuille modèle par une chaine vide.
Aucun test n'est nécessaire pour appliquer un traitement particulier
à la feuille modèle : celle-ci ne contient pas de liason dans les
hyperliens, et la fonction Replace n'a donc aucun effet.
Sub MAJLiens()
Dim l As Hyperlink, f As Worksheet
For Each f In ActiveWorkbook.Sheets
For Each l In ActiveSheet.Hyperlinks
l.SubAddress = Replace(l.SubAddress, "Feuil1!",
"") Next l
Next f
End Sub
Si tu es sur Mac, ou sur une version antérieure à Excel 2000, la
fonction Replace n'est pas disponible. Il faut la remplacer par la
fonction de feuille de calcul SUBSTITUE() :
Application.WorksheetFuction.Substitute
à la plac de Replace.
Voilà, et bonne année.
Bonsoir Patrick,
Pour parcourir une collection, il y a la boucle For Each qui est bien
pratique.
Dans tes hyperliens, tu as dans chacune des feuilles obtenues par
copie une liaison vers la feuille copiée : au lieu que le lien pointe
vers la cellule A8, il pointe vers "Feuil1!A8", "Feuil1" étant à
remplacer par le nom de ta feuille modèle.
2 boucles imbriquées (une pour les feuilles, l'autre pour les
hyperliens au sein de chaque feuille) permettent de remplacer les
liens vers la feuille modèle par une chaine vide.
Aucun test n'est nécessaire pour appliquer un traitement particulier
à la feuille modèle : celle-ci ne contient pas de liason dans les
hyperliens, et la fonction Replace n'a donc aucun effet.
Sub MAJLiens()
Dim l As Hyperlink, f As Worksheet
For Each f In ActiveWorkbook.Sheets
For Each l In ActiveSheet.Hyperlinks
l.SubAddress = Replace(l.SubAddress, "Feuil1!",
"") Next l
Next f
End Sub
Si tu es sur Mac, ou sur une version antérieure à Excel 2000, la
fonction Replace n'est pas disponible. Il faut la remplacer par la
fonction de feuille de calcul SUBSTITUE() :
Application.WorksheetFuction.Substitute
à la plac de Replace.
Voilà, et bonne année.
Bonsoir Patrick,
Pour parcourir une collection, il y a la boucle For Each qui est bien
pratique.
Dans tes hyperliens, tu as dans chacune des feuilles obtenues par
copie une liaison vers la feuille copiée : au lieu que le lien pointe
vers la cellule A8, il pointe vers "Feuil1!A8", "Feuil1" étant à
remplacer par le nom de ta feuille modèle.
2 boucles imbriquées (une pour les feuilles, l'autre pour les
hyperliens au sein de chaque feuille) permettent de remplacer les
liens vers la feuille modèle par une chaine vide.
Aucun test n'est nécessaire pour appliquer un traitement particulier
à la feuille modèle : celle-ci ne contient pas de liason dans les
hyperliens, et la fonction Replace n'a donc aucun effet.
Sub MAJLiens()
Dim l As Hyperlink, f As Worksheet
For Each f In ActiveWorkbook.Sheets
For Each l In ActiveSheet.Hyperlinks
l.SubAddress = Replace(l.SubAddress, "Feuil1!",
"") Next l
Next f
End Sub
Si tu es sur Mac, ou sur une version antérieure à Excel 2000, la
fonction Replace n'est pas disponible. Il faut la remplacer par la
fonction de feuille de calcul SUBSTITUE() :
Application.WorksheetFuction.Substitute
à la plac de Replace.
Voilà, et bonne année.
Bonsoir, Michel.
Je te remercie vivement de l'aide que tu m'apportes.
Un code prêt à servir, et avec les explications en plus !
La boucle fonctionne sans problème pour tous les liens de la feuille active,
mais ne semble pas couvrir toutes les feuilles du classeur. -et je ne
comprends pas pourquoi-.
J'ai testé en copiant ce code :
******************************
Sub MAJLiens()
Dim l As Hyperlink, f As Worksheet
For Each f In ActiveWorkbook.Sheets
For Each l In ActiveSheet.Hyperlinks
l.SubAddress = Replace(l.SubAddress, "Modèle!", "")
Next l
Next f
End Sub
******************************
dans un module standard et dans ThisWorkbook, et seuls les liens de la
feuille active sont corrigés.
Ce qui n'est pas si mal (litote), et qui me suffit amplement, car je vais
inclure ces lignes dans la boucle qui crée chaque feuille.
Une nouvelle fois, Merci,
Joyeux réveillon, et bonne année.
Bien cordialement,
Patrick.Bonsoir Patrick,
Pour parcourir une collection, il y a la boucle For Each qui est bien
pratique.
Dans tes hyperliens, tu as dans chacune des feuilles obtenues par
copie une liaison vers la feuille copiée : au lieu que le lien pointe
vers la cellule A8, il pointe vers "Feuil1!A8", "Feuil1" étant à
remplacer par le nom de ta feuille modèle.
2 boucles imbriquées (une pour les feuilles, l'autre pour les
hyperliens au sein de chaque feuille) permettent de remplacer les
liens vers la feuille modèle par une chaine vide.
Aucun test n'est nécessaire pour appliquer un traitement particulier
à la feuille modèle : celle-ci ne contient pas de liason dans les
hyperliens, et la fonction Replace n'a donc aucun effet.
Sub MAJLiens()
Dim l As Hyperlink, f As Worksheet
For Each f In ActiveWorkbook.Sheets
For Each l In ActiveSheet.Hyperlinks
l.SubAddress = Replace(l.SubAddress, "Feuil1!",
"") Next l
Next f
End Sub
Si tu es sur Mac, ou sur une version antérieure à Excel 2000, la
fonction Replace n'est pas disponible. Il faut la remplacer par la
fonction de feuille de calcul SUBSTITUE() :
Application.WorksheetFuction.Substitute
à la plac de Replace.
Voilà, et bonne année.
Bonsoir, Michel.
Je te remercie vivement de l'aide que tu m'apportes.
Un code prêt à servir, et avec les explications en plus !
La boucle fonctionne sans problème pour tous les liens de la feuille active,
mais ne semble pas couvrir toutes les feuilles du classeur. -et je ne
comprends pas pourquoi-.
J'ai testé en copiant ce code :
******************************
Sub MAJLiens()
Dim l As Hyperlink, f As Worksheet
For Each f In ActiveWorkbook.Sheets
For Each l In ActiveSheet.Hyperlinks
l.SubAddress = Replace(l.SubAddress, "Modèle!", "")
Next l
Next f
End Sub
******************************
dans un module standard et dans ThisWorkbook, et seuls les liens de la
feuille active sont corrigés.
Ce qui n'est pas si mal (litote), et qui me suffit amplement, car je vais
inclure ces lignes dans la boucle qui crée chaque feuille.
Une nouvelle fois, Merci,
Joyeux réveillon, et bonne année.
Bien cordialement,
Patrick.
Bonsoir Patrick,
Pour parcourir une collection, il y a la boucle For Each qui est bien
pratique.
Dans tes hyperliens, tu as dans chacune des feuilles obtenues par
copie une liaison vers la feuille copiée : au lieu que le lien pointe
vers la cellule A8, il pointe vers "Feuil1!A8", "Feuil1" étant à
remplacer par le nom de ta feuille modèle.
2 boucles imbriquées (une pour les feuilles, l'autre pour les
hyperliens au sein de chaque feuille) permettent de remplacer les
liens vers la feuille modèle par une chaine vide.
Aucun test n'est nécessaire pour appliquer un traitement particulier
à la feuille modèle : celle-ci ne contient pas de liason dans les
hyperliens, et la fonction Replace n'a donc aucun effet.
Sub MAJLiens()
Dim l As Hyperlink, f As Worksheet
For Each f In ActiveWorkbook.Sheets
For Each l In ActiveSheet.Hyperlinks
l.SubAddress = Replace(l.SubAddress, "Feuil1!",
"") Next l
Next f
End Sub
Si tu es sur Mac, ou sur une version antérieure à Excel 2000, la
fonction Replace n'est pas disponible. Il faut la remplacer par la
fonction de feuille de calcul SUBSTITUE() :
Application.WorksheetFuction.Substitute
à la plac de Replace.
Voilà, et bonne année.
Bonsoir, Michel.
Je te remercie vivement de l'aide que tu m'apportes.
Un code prêt à servir, et avec les explications en plus !
La boucle fonctionne sans problème pour tous les liens de la feuille active,
mais ne semble pas couvrir toutes les feuilles du classeur. -et je ne
comprends pas pourquoi-.
J'ai testé en copiant ce code :
******************************
Sub MAJLiens()
Dim l As Hyperlink, f As Worksheet
For Each f In ActiveWorkbook.Sheets
For Each l In ActiveSheet.Hyperlinks
l.SubAddress = Replace(l.SubAddress, "Modèle!", "")
Next l
Next f
End Sub
******************************
dans un module standard et dans ThisWorkbook, et seuls les liens de la
feuille active sont corrigés.
Ce qui n'est pas si mal (litote), et qui me suffit amplement, car je vais
inclure ces lignes dans la boucle qui crée chaque feuille.
Une nouvelle fois, Merci,
Joyeux réveillon, et bonne année.
Bien cordialement,
Patrick.Bonsoir Patrick,
Pour parcourir une collection, il y a la boucle For Each qui est bien
pratique.
Dans tes hyperliens, tu as dans chacune des feuilles obtenues par
copie une liaison vers la feuille copiée : au lieu que le lien pointe
vers la cellule A8, il pointe vers "Feuil1!A8", "Feuil1" étant à
remplacer par le nom de ta feuille modèle.
2 boucles imbriquées (une pour les feuilles, l'autre pour les
hyperliens au sein de chaque feuille) permettent de remplacer les
liens vers la feuille modèle par une chaine vide.
Aucun test n'est nécessaire pour appliquer un traitement particulier
à la feuille modèle : celle-ci ne contient pas de liason dans les
hyperliens, et la fonction Replace n'a donc aucun effet.
Sub MAJLiens()
Dim l As Hyperlink, f As Worksheet
For Each f In ActiveWorkbook.Sheets
For Each l In ActiveSheet.Hyperlinks
l.SubAddress = Replace(l.SubAddress, "Feuil1!",
"") Next l
Next f
End Sub
Si tu es sur Mac, ou sur une version antérieure à Excel 2000, la
fonction Replace n'est pas disponible. Il faut la remplacer par la
fonction de feuille de calcul SUBSTITUE() :
Application.WorksheetFuction.Substitute
à la plac de Replace.
Voilà, et bonne année.
Bonjour, *docm*
J'ai lu ton post OiI%
avec le plus grand intéret :
Je pense également que la solution passe par VBA, lors de la duplication
du
modèle, à défaut -hélàs- de pouvoir sélectionner tous les liens d'un coup
pour les mettre à jour.
Je m'y colle. Avec l'enregistreur, ça devrait le faire.
Mille mercis, et bonne année,
Bien cordialement,
Patrick.Pour avoir la liste des hyperliens de la feuille active:
For Each xlink In ActiveSheet.Hyperlinks.
...
next
Pour modifier le premier hyperlien:
activesheet.Hyperlinks(1).SubAddress = ActiveSheet.Name & "!A1"
Amicalement
Bonjour, *docm*
J'ai lu ton post OiI%23rRs7EHA.2016@TK2MSFTNGP15.phx.gbl
avec le plus grand intéret :
Je pense également que la solution passe par VBA, lors de la duplication
du
modèle, à défaut -hélàs- de pouvoir sélectionner tous les liens d'un coup
pour les mettre à jour.
Je m'y colle. Avec l'enregistreur, ça devrait le faire.
Mille mercis, et bonne année,
Bien cordialement,
Patrick.
Pour avoir la liste des hyperliens de la feuille active:
For Each xlink In ActiveSheet.Hyperlinks.
...
next
Pour modifier le premier hyperlien:
activesheet.Hyperlinks(1).SubAddress = ActiveSheet.Name & "!A1"
Amicalement
Bonjour, *docm*
J'ai lu ton post OiI%
avec le plus grand intéret :
Je pense également que la solution passe par VBA, lors de la duplication
du
modèle, à défaut -hélàs- de pouvoir sélectionner tous les liens d'un coup
pour les mettre à jour.
Je m'y colle. Avec l'enregistreur, ça devrait le faire.
Mille mercis, et bonne année,
Bien cordialement,
Patrick.Pour avoir la liste des hyperliens de la feuille active:
For Each xlink In ActiveSheet.Hyperlinks.
...
next
Pour modifier le premier hyperlien:
activesheet.Hyperlinks(1).SubAddress = ActiveSheet.Name & "!A1"
Amicalement
For Each f In ActiveWorkbook.Sheets
For Each l In ActiveSheet.Hyperlinks
... l'activesheet reste inchangée
For Each f In ActiveWorkbook.Sheets
For Each l In f.Hyperlinks
For Each f In ActiveWorkbook.Sheets
f.activate
For Each l In ActiveSheet.Hyperlinks
Bonsoir, Michel.
Je te remercie vivement de l'aide que tu m'apportes.
Un code prêt à servir, et avec les explications en plus !
La boucle fonctionne sans problème pour tous les liens de la feuille active,
mais ne semble pas couvrir toutes les feuilles du classeur. -et je ne
comprends pas pourquoi-.
J'ai testé en copiant ce code :
******************************
Sub MAJLiens()
Dim l As Hyperlink, f As Worksheet
For Each f In ActiveWorkbook.Sheets
For Each l In ActiveSheet.Hyperlinks
l.SubAddress = Replace(l.SubAddress, "Modèle!", "")
Next l
Next f
End Sub
******************************
dans un module standard et dans ThisWorkbook, et seuls les liens de la
feuille active sont corrigés.
Ce qui n'est pas si mal (litote), et qui me suffit amplement, car je vais
inclure ces lignes dans la boucle qui crée chaque feuille.
Une nouvelle fois, Merci,
Joyeux réveillon, et bonne année.
Bien cordialement,
Patrick.Bonsoir Patrick,
Pour parcourir une collection, il y a la boucle For Each qui est bien
pratique.
Dans tes hyperliens, tu as dans chacune des feuilles obtenues par
copie une liaison vers la feuille copiée : au lieu que le lien pointe
vers la cellule A8, il pointe vers "Feuil1!A8", "Feuil1" étant à
remplacer par le nom de ta feuille modèle.
2 boucles imbriquées (une pour les feuilles, l'autre pour les
hyperliens au sein de chaque feuille) permettent de remplacer les
liens vers la feuille modèle par une chaine vide.
Aucun test n'est nécessaire pour appliquer un traitement particulier
à la feuille modèle : celle-ci ne contient pas de liason dans les
hyperliens, et la fonction Replace n'a donc aucun effet.
Sub MAJLiens()
Dim l As Hyperlink, f As Worksheet
For Each f In ActiveWorkbook.Sheets
For Each l In ActiveSheet.Hyperlinks
l.SubAddress = Replace(l.SubAddress, "Feuil1!",
"") Next l
Next f
End Sub
Si tu es sur Mac, ou sur une version antérieure à Excel 2000, la
fonction Replace n'est pas disponible. Il faut la remplacer par la
fonction de feuille de calcul SUBSTITUE() :
Application.WorksheetFuction.Substitute
à la plac de Replace.
Voilà, et bonne année.
For Each f In ActiveWorkbook.Sheets
For Each l In ActiveSheet.Hyperlinks
... l'activesheet reste inchangée
For Each f In ActiveWorkbook.Sheets
For Each l In f.Hyperlinks
For Each f In ActiveWorkbook.Sheets
f.activate
For Each l In ActiveSheet.Hyperlinks
Bonsoir, Michel.
Je te remercie vivement de l'aide que tu m'apportes.
Un code prêt à servir, et avec les explications en plus !
La boucle fonctionne sans problème pour tous les liens de la feuille active,
mais ne semble pas couvrir toutes les feuilles du classeur. -et je ne
comprends pas pourquoi-.
J'ai testé en copiant ce code :
******************************
Sub MAJLiens()
Dim l As Hyperlink, f As Worksheet
For Each f In ActiveWorkbook.Sheets
For Each l In ActiveSheet.Hyperlinks
l.SubAddress = Replace(l.SubAddress, "Modèle!", "")
Next l
Next f
End Sub
******************************
dans un module standard et dans ThisWorkbook, et seuls les liens de la
feuille active sont corrigés.
Ce qui n'est pas si mal (litote), et qui me suffit amplement, car je vais
inclure ces lignes dans la boucle qui crée chaque feuille.
Une nouvelle fois, Merci,
Joyeux réveillon, et bonne année.
Bien cordialement,
Patrick.
Bonsoir Patrick,
Pour parcourir une collection, il y a la boucle For Each qui est bien
pratique.
Dans tes hyperliens, tu as dans chacune des feuilles obtenues par
copie une liaison vers la feuille copiée : au lieu que le lien pointe
vers la cellule A8, il pointe vers "Feuil1!A8", "Feuil1" étant à
remplacer par le nom de ta feuille modèle.
2 boucles imbriquées (une pour les feuilles, l'autre pour les
hyperliens au sein de chaque feuille) permettent de remplacer les
liens vers la feuille modèle par une chaine vide.
Aucun test n'est nécessaire pour appliquer un traitement particulier
à la feuille modèle : celle-ci ne contient pas de liason dans les
hyperliens, et la fonction Replace n'a donc aucun effet.
Sub MAJLiens()
Dim l As Hyperlink, f As Worksheet
For Each f In ActiveWorkbook.Sheets
For Each l In ActiveSheet.Hyperlinks
l.SubAddress = Replace(l.SubAddress, "Feuil1!",
"") Next l
Next f
End Sub
Si tu es sur Mac, ou sur une version antérieure à Excel 2000, la
fonction Replace n'est pas disponible. Il faut la remplacer par la
fonction de feuille de calcul SUBSTITUE() :
Application.WorksheetFuction.Substitute
à la plac de Replace.
Voilà, et bonne année.
For Each f In ActiveWorkbook.Sheets
For Each l In ActiveSheet.Hyperlinks
... l'activesheet reste inchangée
For Each f In ActiveWorkbook.Sheets
For Each l In f.Hyperlinks
For Each f In ActiveWorkbook.Sheets
f.activate
For Each l In ActiveSheet.Hyperlinks
Bonsoir, Michel.
Je te remercie vivement de l'aide que tu m'apportes.
Un code prêt à servir, et avec les explications en plus !
La boucle fonctionne sans problème pour tous les liens de la feuille active,
mais ne semble pas couvrir toutes les feuilles du classeur. -et je ne
comprends pas pourquoi-.
J'ai testé en copiant ce code :
******************************
Sub MAJLiens()
Dim l As Hyperlink, f As Worksheet
For Each f In ActiveWorkbook.Sheets
For Each l In ActiveSheet.Hyperlinks
l.SubAddress = Replace(l.SubAddress, "Modèle!", "")
Next l
Next f
End Sub
******************************
dans un module standard et dans ThisWorkbook, et seuls les liens de la
feuille active sont corrigés.
Ce qui n'est pas si mal (litote), et qui me suffit amplement, car je vais
inclure ces lignes dans la boucle qui crée chaque feuille.
Une nouvelle fois, Merci,
Joyeux réveillon, et bonne année.
Bien cordialement,
Patrick.Bonsoir Patrick,
Pour parcourir une collection, il y a la boucle For Each qui est bien
pratique.
Dans tes hyperliens, tu as dans chacune des feuilles obtenues par
copie une liaison vers la feuille copiée : au lieu que le lien pointe
vers la cellule A8, il pointe vers "Feuil1!A8", "Feuil1" étant à
remplacer par le nom de ta feuille modèle.
2 boucles imbriquées (une pour les feuilles, l'autre pour les
hyperliens au sein de chaque feuille) permettent de remplacer les
liens vers la feuille modèle par une chaine vide.
Aucun test n'est nécessaire pour appliquer un traitement particulier
à la feuille modèle : celle-ci ne contient pas de liason dans les
hyperliens, et la fonction Replace n'a donc aucun effet.
Sub MAJLiens()
Dim l As Hyperlink, f As Worksheet
For Each f In ActiveWorkbook.Sheets
For Each l In ActiveSheet.Hyperlinks
l.SubAddress = Replace(l.SubAddress, "Feuil1!",
"") Next l
Next f
End Sub
Si tu es sur Mac, ou sur une version antérieure à Excel 2000, la
fonction Replace n'est pas disponible. Il faut la remplacer par la
fonction de feuille de calcul SUBSTITUE() :
Application.WorksheetFuction.Substitute
à la plac de Replace.
Voilà, et bonne année.