Exécuter un chemin d'accès à l'ouverture de mon fichier

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Cydor007

XLDnaute Occasionnel
Bonjour à tous,

J'ai un petit bogue de programmation. J'aimerais modifier mon code pour qu'à chaque fois que mon fichier s'ouvre qu'il exécute une mise à jour de liaison entre mon fichier et ma base de donnée.

Présentement la fenêtre de "Mettre à jour les valeurs" s'affiche, mais il faut à chaque fois que je sélectionne le bon chemin.

Est-ce qu'il possible d'indiquer le chemin de façon automatique pour que je puisse directement avoir la mise à jour de mes valeurs.

Voici mon code actuellement à l'ouverture:

Private Sub Workbook_Open()
ActiveWorkbook.UpdateLink Name:=ActiveWorkbook.LinkSources
UserForm8.Show
End Sub

Voici le chemin que je sélectionne à chaque fois sur le serveur P: P:\Dessins SW\Y-Outils de conception\Réunion de concepteurs\Log Dessin\LOG-DESSINS version 2.xls

Donc, est-ce qu'il y a un moyen de relier ce chemin dans la macro pour que les liaisons soivent automatique.

Merci🙂

Cydor
 
Re : Exécuter un chemin d'accès à l'ouverture de mon fichier

Salut,

Est-ce qu'il y a quelqu'un qui sait comment ajouter un chemin d'accès dans une macro. Il me manque que cette information pour finaliser mon travail.

J'ai besoin d'un peiti coup de main.

Merci à l'avance.

Cydor🙂
 
Re : Exécuter un chemin d'accès à l'ouverture de mon fichier

Bonsoir Cydr007,

Essaie de remplace ton bout de code par celui-ci :
VB:
Private Sub Workbook_Open()
     ActiveWorkbook.ChangeLink Name:="P:\Dessins SW\Y-Outils de conception\Réunion de concepteurs\Log Dessin\LOG-DESSINS version 2.xls"
     UserForm8.Show
End Sub

A+
 
Re : Exécuter un chemin d'accès à l'ouverture de mon fichier

Salut Fredo,

Meric d'avoir répondu. J'ai essayé de remplacé mon code, mais j'ai une erreur de compilation: Argument non facultatif.

Il souligne en jaune Private Sub Workbook_Open(), comme si c'est pas nécessaire d'ouvrir mon fichier pour mettre les valeurs à jour.

Mais j'aimerais vraiment m'assurer que mon fichier reçoivent la dernière version de ma base de donnée. Donc, c'est pour ça que si je peux le faire à l'ouverture, cela m'assure que mes valeurs sont à jour.

As-tu un autre solution ou une autre approche? Je suis à cours d'idée.

Je reviens plus tard dans la soirée ( à mon temps à moi).

J'attends de tes nouvelles Fredo.

Merci

Cydor007
 
Re : Exécuter un chemin d'accès à l'ouverture de mon fichier

Re-bonsoir Cydor,

J'ai adapté le code et il fonctionne chez moi. Le voici :
VB:
Private Sub Workbook_Open()
    Dim i, LesSources
    LesSources = ActiveWorkbook.LinkSources
    For i = 1 To UBound(LesSources)
        If Right(LesSources(i), 26) = "LOG-DESSINS version 2.xls" Then _
            ActiveWorkbook.ChangeLink Name:=LesSources(i), _
            newName:="P:\Dessins SW\Y-Outils de conception\Réunion de concepteurs\Log Dessin\LOG-DESSINS version 2.xls"
    Next
    UserForm8.Show
End Sub

A+
 
Re : Exécuter un chemin d'accès à l'ouverture de mon fichier

Bonsoir Fredo,

J'ai essayé, mais sans succès le nouveau code. Il n' y a pas d'erreur à l'ouverture,mais les mises à jour de mes valeurs ne fonctionnent pas.

Je t'explique: J'ai mis à jour dans une table un information qui se retrouve dans ma base de donnée. J'ai sauvegardé ma base et fermé le fichier. Ce que je pensais, c'Est qu'en ouvrant mon fichier,l'information se mettrait à jour, mais non.

Peut-être que c'est de la façon dont est relié mes 2 fichiers. Tous mes cellules liées à ma base de donnée passe par un lien unique dans l'onglet Générateur P53 . Ma source en P53 est un hyperlien qui mène vers ma base donnée. J'ai utilisé cette méthode pour éviter de refaire les liens de tout mes cellules liées dans mon fichier.

Quand j'ai ouvert mon fichier, j'ai vérifié l'état de mon lien d'Accès (la source) et il était inconnu. J'en conclu que cela ne fonctionne pas. Par contre quand je refais le lien manuellement, tout fonctionne.

Est-ce que cE'st ma méthode qui n'est pas bon. Ou peut-être un setting que je n'ai pas fais. Peux-tu m'aider svp.

Merci

Cydor007
 
Re : Exécuter un chemin d'accès à l'ouverture de mon fichier

Bonjour à tous,

Est-ce que quelqu'un sait comment mettre à jour les valeurs liées à partir d'une source unique dans un fichier excel?.

Mon problème est le suivant: je dois à chaque que j'ouvre mon fichier, je dois mettre à jour le lien d'accès de mon fichier ( qui esr relié è une base de donnée). Je souhaite l'intégrer dans une macro ( voir texte plus haut) pour qu'à chaque ouverture, le lien d'accès est mis à jour et que j'obtiens les mises à jour de mes valeurs.

Comment je peux faire, je vais continuer à chercher.

Cydor007
 
Re : Exécuter un chemin d'accès à l'ouverture de mon fichier

Bonsoir Cydor007,

La réponse que je t'ai donnée est valable pour les liaisons entre classeurs mais pas pour les liens hypertextes. Donc, je ne comprends plus très bien comment sont reliés tes fichiers. Peux-tu me mettre à disposition un bout de ton fichier dans le quel il y a le lien (pas la base de données) et le code complet pour que je puisse te donner une réponse plus appropriée ?

Merci et A+
 
Re : Exécuter un chemin d'accès à l'ouverture de mon fichier

Salut fredo,

Je suis désolé, je me suis mal exprimé. Tous mes cellules liées avec ma base de donnée passe par la même source qui est la cellule qui est P53. Je pensais qu'en mettant un hyperlien ce serait plus facile, mais ce n'est pas le cas. Présentement l'hyperlien n'inffluence pas mes cellules liées avec ma BD. Le but d'une source unique est que cela évite de refaire toute les liens de me cellules avec ma BD si jamais je dois déplacer ma BD de serveur. Mais dans mon cas cela ne fonctionnement pas.

Présentement ma source, qui est P53, ne correspond à rien. C'est pour ça que je dois quand même mettre les valeurs à jour dans la gestion des connexions ( onglets données excel 2007) quand je mettre à jour mes valeurs. Ton code un peu plus haut devrait fonctionner si j'avais une source existante.

Donc, mon problème change et il est d'une autre nature.

Si jamais je dois déplacer ma BD et que je dois relié mes valeurs avec le nouvel emplacement, quel est le moyen le plus facile? Aller dans Modifier les liens d'accès: Modifier la source... tout simplement?.

Voici un exemple d'une formule dans mon formulaire: AX1 =[P53]Bushing!E3
Est-ce qu'il possible de remplacer [P53] par le chemin d'accès de ma BD de façon automatique, c'est à dire, exemple, à partir d'une cellule ou il est écrit ce chemin:
"P:\Dessins SW\Y-Outils de conception\Réunion de concepteurs\Log Dessin\LOG-DESSINS version 2.xls" qu'il soit relié à chaque cellule ou il est écrit =[P53].

J'espère que j'ai été assez clair. Je vais faire des tests sur mon côté.

Merci de ton aide.

Cydor007
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Retour