Actualise toutes les connexions de données lorsque vous ouvrez un classeur, Excel VBA

Le classeur peut être combiné avec des sources de données externes, telles que des requêtes Web, des connexions MSQuery, des tableaux croisés dynamiques, etc. Dans ce cas, une solution utile consiste à utiliser le rafraîchissement automatique de ces liens lors de l’ouverture du classeur. La macro suivante fait l’affaire.
Comment ca marche?
Il s’agit d’une macro d’une ligne qui utilise la méthode RefreshAl. Elle actualise toutes les demandes d’un classeur ou d’une feuille de calcul. Dans ce cas, nous indiquerons la feuille.

Private Sub ConnexionsDonnees ()
'Étape 1: Appliquez la méthode RefreshAll
Workbooks(ThisWorkbook.Name).RefreshAll
End Sub

Il est à noter que l’objet ThisWorkbook a été utilisé dans la macro. C’est un moyen simple et sûr d’indiquer le classeur actuel. La différence entre Thi sWorkbook et ActiveWorkbook est subtil mais important. L’objet ThisWorkbook fait référence à un classeur contenant le code. Au lieu de cela, l’objet ActiveWorkbook fait référence au classeur actif. Souvent, les mêmes objets sont renvoyés, mais si le classeur dans lequel le code est exécuté n’est pas actif, les résultats seront différents. Dans notre cas, nous ne voulons pas risquer de mettre à jour les fichiers d’autres classeurs. C’est pourquoi nous utiliserons la méthode ThisWorkbook.

Comment utiliser la macro?
Pour implémenter cette macro, copiez et collez son code dans la fenêtre Code et affectez-le à l’événement ConnexionDonnee. Le placer ici vous permet d’exécuter la macro chaque fois que l’utilisateur ouvre le classeur.
1. Utilisez les touches Alt + F11 pour activer Visual Basic Editor.
2. Dans la fenêtre Projet, recherchez le bon projet ou classeur et cliquez sur le signe + en regard de celui-ci. Toutes les feuilles seront affichées.
3. Cliquez sur ThisWarkbook.
4. Sélectionnez l’événement Open dans la liste déroulante des évenement.
Entrez ou collez le code dans la fenêtre Code et affectez-le à l’événement ConnexionDonnee.

5. Tapez ou collez le code dans le module nouvellement créé.

S’abonner
Notifier de
0 Commentaires
Inline Feedbacks
Voir tous les commentaires

Initiation à Excel

Fonctions Excel

Excel VBA

Macros VBA Utiles

Plus d'outils

Sur Facebook

Sur YouTube

0
Nous aimerions avoir votre avis, veuillez laisser un commentaire.x