Retardement le lancement d une macro

  • Initiateur de la discussion Initiateur de la discussion mimy
  • Date de début Date de début

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 !

mimy

XLDnaute Occasionnel
Bonjour,

Je suis en train de réaliser un fichier excel qui récupère des cours d indices via un site internet.
Grâce à l aide de personnes de ce site, j ai pu réaliser à bien ce fichier mais je voudrais l optimiser.
Le problème c est que la "connexion" entre le site est mon fichier est lente et les valeurs mettent quelques secondes à s afficher. D où le message Debug dès l ouverture de mon fichier.
Je voudrais savoir si dès l ouverture de mon fichier on peut mettre un timer (je suppose dans workbook_open) et qui prend en compte ma macro qui est dans ma Feuil1 qui s appelle Private sub Worksheet_Calculate().
J ai ecrit dans ThisWorkbook:

private sub WorkBook_open()
Application.Ontime Now+TimeValue("00:00:10"), "Worksheet_Calculate"
v=Sheets("Feuil1").range("B7").value ' j actualise mes valeurs de cours d indices
end sub

mais ça ne marche pas.

Dans d autres sites il y a des exemples où la macro se trouve dans un module et ça marche contrairement à ma macro dans ma Feuil1

Merci beaucoup
 
Dernière édition:
Re : Retardement le lancement d une macro

Re,
Comment ça?
Puisqu on a mis cette ligne dans mon module test, est ce que la mise à jour se fait dès lors que je clique sur le bouton? je dis peut être des betises.
Faudrait pas les updater dès que j ouvre mon classeur?
 
Re : Retardement le lancement d une macro

Re,

Ca ne change pas grand chose. Il y a dès que j appuie sur le bouton un message d erreur et ensuite il faut que j appuie sur continue pour que ça marche.

Je t envoie quand même le fichier
 

Pièces jointes

Re : Retardement le lancement d une macro

Re,

modifie le début de la procédure dans le module de la feuille ainsi :
Code:
Option Explicit
Private Sub Worksheet_calculate()
Static c As Byte
If IsError(Range("B7")) Then Exit Sub
If Range("B7") = v Then Exit Sub
 
- 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

Réponses
6
Affichages
403
  • Question Question
XL 2021 VBA excel
Réponses
4
Affichages
169
Réponses
7
Affichages
619
Réponses
5
Affichages
562
Retour