Rapport de message :*
 

Re: Utilisation et placement de DoEvents

Titre du sujet : Re: Utilisation et placement de DoEvents
par myDearFriend! le 24/11/2011 21:33:46

Bonsoir killerilet, bienvenue sur XLpages.com

Extrait de l'aide Excel VBA :

« La méthode Wait suspend toute activité de Microsoft Excel et peut vous empêcher d'accomplir toute autre opération sur votre ordinateur pendant la durée de la pause. Seules les tâches de fond, telles que l'impression ou le recalcul, se poursuivent. »

Il n'est donc pas étonnant que tu ne puisses pas accomplir les 2 actions simultanément !

Tu auras beau ajouter autant de DoEvents que tu veux, ça ne changera rien au problème. Je suppose que le "On" qui t'a conseillé ça n'a pas vu ton code...

A mon avis, la piste à suivre pour toi, c'est la méthode OnTime : voir CE TUTORIEL.

Il est également possible de jouer avec l'API Windows pour ces questions de temporisation, mais, au vu de ton code, je pense que tu n'es pas prêt pour ça encore.


Par ailleurs, je t'informe que lorsqu'on use de la méthode Application.OnKey dans un code, on s'arrange pour rétablir un fonctionnement normal de l'application à la fermeture du classeur (à minima). C'est primordial !

Extrait de l'aide VBA (et oui, encore) :

« Cette forme de la méthode OnKey modifie la correspondance normale des touches dans Microsoft Excel. Si vous ne spécifiez pas l'argument Procédure, Touche rétablit son résultat d'origine dans Microsoft Excel et toutes les affectations de touches particulières effectuées avec de précédentes méthodes OnKey sont supprimées. »

Autrement dit :
Quand on active un fonctionnement personnalisé comme :
Application.OnKey "{RIGHT}", "droite"
On n'oublie pas de désactiver ce fonctionnement personnalisé à la fin :
Application.OnKey "{RIGHT}"

Et on fait de même pour toutes les affectations OnKey ainsi réalisées.

Cordialement,