VBA Changelink et "sélectionner une feuille"

2 réponses
Avatar
René Delcourt
Bonjour le Forum

Je voudrais changer les liens par ce code :

Sub MAJLien()
semaine = 19
Alinks = ActiveWorkbook.LinkSources(xlExcelLinks)
If Not IsEmpty(Alinks) Then
For i = 1 To UBound(Alinks)
ActiveWorkbook.ChangeLink Name:=Alinks(i),
newname:=WorksheetFunction.Replace(Alinks(i),
WorksheetFunction.Search("10??", Alinks(i)) + 2, 2, semaine),
Type:=xlExcelLinks
Next i
End If
End Sub

Cependant, le nom de la nouvelle feuille de référence est aussi différent et
excel me demande donc de "sélectionner une feuille". A ce sujet je n'ai
trouvé aucun code.
Je fais donc appel à l'équipe pour m'ouvrir les yeux.
Une excellente journée.
--
René Delcourt

2 réponses

Avatar
Daniel.C
Bonjour.
Je ne pense pas que "changelink" puisse faire ce que tu veux. Pourquoi
ne pas procéder par REPLACE sur toutes tes feuilles ?
Cordialement.
Daniel

Bonjour le Forum

Je voudrais changer les liens par ce code :

Sub MAJLien()
semaine = 19
Alinks = ActiveWorkbook.LinkSources(xlExcelLinks)
If Not IsEmpty(Alinks) Then
For i = 1 To UBound(Alinks)
ActiveWorkbook.ChangeLink Name:=Alinks(i),
newname:=WorksheetFunction.Replace(Alinks(i),
WorksheetFunction.Search("10??", Alinks(i)) + 2, 2, semaine),
Type:=xlExcelLinks
Next i
End If
End Sub

Cependant, le nom de la nouvelle feuille de référence est aussi différent et
excel me demande donc de "sélectionner une feuille". A ce sujet je n'ai
trouvé aucun code.
Je fais donc appel à l'équipe pour m'ouvrir les yeux.
Une excellente journée.
Avatar
René Delcourt
Oui, en effet, j'ai vu un script de ce genre (de toi, d'ailleurs, me
semble-t-il!)
Merci de ta réponse.
--
René Delcourt


"Daniel.C" a écrit :

Bonjour.
Je ne pense pas que "changelink" puisse faire ce que tu veux. Pourquoi
ne pas procéder par REPLACE sur toutes tes feuilles ?
Cordialement.
Daniel

> Bonjour le Forum
>
> Je voudrais changer les liens par ce code :
>
> Sub MAJLien()
> semaine = 19
> Alinks = ActiveWorkbook.LinkSources(xlExcelLinks)
> If Not IsEmpty(Alinks) Then
> For i = 1 To UBound(Alinks)
> ActiveWorkbook.ChangeLink Name:=Alinks(i),
> newname:=WorksheetFunction.Replace(Alinks(i),
> WorksheetFunction.Search("10??", Alinks(i)) + 2, 2, semaine),
> Type:=xlExcelLinks
> Next i
> End If
> End Sub
>
> Cependant, le nom de la nouvelle feuille de référence est aussi différent et
> excel me demande donc de "sélectionner une feuille". A ce sujet je n'ai
> trouvé aucun code.
> Je fais donc appel à l'équipe pour m'ouvrir les yeux.
> Une excellente journée.


.