OVH Cloud OVH Cloud

Liaison de fichier

1 réponse
Avatar
xx
Bonjour,
J'utilise des liaisons entre fichiers par l'intermédiaire de la fonction
indirect(), qui me permet de rendre les liaisons paramétrables.
Je diffuse les fichiers liés sans les fichiers source, mais la fonction
indirect() étant volatile, elle se recalcule au moindre prétexte, même si le
calcul est en mode manuel, et le fichier lié est alors inutilisable, car
indirect() renvoie une erreur.

Je pense "supprimer" la volatilité de indirect() par une procédure VBA :

Function va_chercher(classeur As String, onglet As String, ref_cel As
String) As Variant
Dim tmp As String
va_chercher = Evaluate("[" + classeur + "]" + onglet + "!" + ref_cel)
End Function

Ca marche, mais devient trèèèèèèèès lent lors de la mise à jour des
liaisons, car il y en a beaucoup.

Pensez-vous qu'il puisse y avoir une meilleure solution ?

Merci.

1 réponse

Avatar
Philippe.R
Bonjour,
Il y aurait la piste d'un copier / collage spécial / valeurs des cellules contenant les fonctions
indirect() avant de diffuser le classeur.
Pas possible ?
--
Amicales Salutations
Retirer A_S_ pour répondre.
XL 97 / 2000 / 2002
Pour suivre le forum :
news://msnews.microsoft.com/microsoft.public.fr.excel
(Voulez-vous vous abonner ? -> Oui)

"xx" a écrit dans le message de news:c9s5c4$jn8$
Bonjour,
J'utilise des liaisons entre fichiers par l'intermédiaire de la fonction
indirect(), qui me permet de rendre les liaisons paramétrables.
Je diffuse les fichiers liés sans les fichiers source, mais la fonction
indirect() étant volatile, elle se recalcule au moindre prétexte, même si le
calcul est en mode manuel, et le fichier lié est alors inutilisable, car
indirect() renvoie une erreur.

Je pense "supprimer" la volatilité de indirect() par une procédure VBA :

Function va_chercher(classeur As String, onglet As String, ref_cel As
String) As Variant
Dim tmp As String
va_chercher = Evaluate("[" + classeur + "]" + onglet + "!" + ref_cel)
End Function

Ca marche, mais devient trèèèèèèèès lent lors de la mise à jour des
liaisons, car il y en a beaucoup.

Pensez-vous qu'il puisse y avoir une meilleure solution ?

Merci.