Rupture des liaisons externes après copie

Bonjour à tous,

Encore un nouveau défis certainement facile pour vous mais malheureusement hors de ma portée.

J'utilise le code ci-dessous pour effectuer à partir du classeur ouvert une copie de certaines feuilles et d'un INDEX vers un répertoire commun.

Sub Copy_4020()
Dim wbk As Workbook
Dim Sh As Worksheet
Application.ScreenUpdating = False
ThisWorkbook.Sheets(Array("INDEX", "4020")).Copy
Set wbk = ActiveWorkbook
For Each Sh In wbk.Worksheets
Next Sh
Application.DisplayAlerts = False
wbk.SaveCopyAs ThisWorkbook.Path & "\4020_" & Format(Date, "mmmm-yyyy") & ".xlsx"
Application.DisplayAlerts = False
wbk.Close
Set wbk = Nothing
End Sub

Tout fonctionne correctement mais j'aimerais rompre automatiquement les liaison externes lors de la copie pour que le fichier créé n'affiche que les valeurs copiées sans demander la mise à jour à l'ouverture.

Je précise liaison externes car j'aimerais dans le fichier créé pouvoir conserver les hyperliens de la page index qui pointe vers les feuilles qui ont été copiées. Cela dit, si ce n'est pas possible, ce n'est pas bloquant pour moi.

Merci de votre aide

Bonjour,

Dans ta bloucle :

For Each Sh In wbk.Worksheets
    Sh.UsedRange.Value = Sh.UsedRange.Value
Next Sh

Bonjour,

tu peux aussi changer l'invite de démarrage pour ne plus demander ni faire la mise à jour des liens à l'ouverture :

ActiveWorkbook.UpdateLinks = xlUpdateLinksNever

Ils resteront présents !

eric

Merci à vous

Rechercher des sujets similaires à "rupture liaisons externes copie"