Supprimer les connections d'un claseur en VBA
Hello ! :coucou:
Me voici avec une nouvelle question
Dans mon excel, par macro, je crée un tableau croisée dynamique qui va piocher des infos dans un autre fichier.
Pour ce faire, je créé une connexion entre mon fichier et le fichier cible.
Le souci, est que si je ferme mon fichier, et que je re-crée un tableau croisé pointant sur la même source, ça ne fonctionne pas.
En effet, le nom de la connexion s’incrémente de 1 à chaque nouvelle connexion.
Mon but est de supprimer l'ensemble des connections existantes en début de macro.
Et là je coince.
Si j'enregistre une macro, ça me donne :
Code:
ActiveWorkbook.Connections("Nom_du_fichier_cible").Delete
Le souci est que je ne sais pas lire les nom des connections afin de les supprimer par la suite.
J'ai essayé
Code:
ActiveWorkbook.Connections().Name
Sans résultat, si vous avez une solution, je suis preneur.
Merci :king:
PS :
J'ai essayé ça sans succès :
Code:
1 2 3 4 5 6 7 8 9 10
| Sub CasserLiens()
Dim i As Long
Dim Lien As Variant
Lien = ActiveWorkbook.LinkSources(Type:=xlLinkTypeExcelLinks)
If IsEmpty(Lien) Then Exit Sub
For i = LBound(Lien) To UBound(Lien)
ActiveWorkbook.BreakLink Name:=Lien(i), Type:=xlLinkTypeExcelLinks
Next i
End Sub |