begin process at 2012 02 14 12:22:21
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Visual Basic 6

 > 

Divers

 > 

General

 > 

Tester si une macro est en cours d execution


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Tester si une macro est en cours d execution

lundi 24 décembre 2007 à 16:01:35 | Tester si une macro est en cours d execution

helpvb

Bonjour Sur mon document excel j ai un menu personnalisé avec des sous menus qui permettent a l utilisateur de declencher des macros vba Comment pourrais je tester en vba 6.3 si une des 20 macros mis a disposition est en cours d execution ? Merci pour votre aide
lundi 24 décembre 2007 à 16:11:55 | Re : Tester si une macro est en cours d execution

ghuysmans99

Membre Club
Réponse acceptée !
Méthode simple : à chaque fois qu'une de tes macros est lancée, tu positionne une variable à true et quand elle se termine, à false.
Et après tu regardes la valeur de tes variables ...
D'accord c'est pas très propre mais bon
_______________________________________________________________________
VB.NETis good ...VB6is better
lundi 24 décembre 2007 à 16:15:36 | Re : Tester si une macro est en cours d execution

helpvb

Réponse acceptée !
Merci pour la reponse mais si la macro s est plantée la variable restera positionnee a True et je souhaiterais eviter de rentrer dans une gestion d erreu de toutes mes macros...
lundi 24 décembre 2007 à 16:40:17 | Re : Tester si une macro est en cours d execution

jmfmarques

Membre Club
Réponse acceptée !
Bonjour,

Si la macro s'est plantée, c'est qu'il y avait une raison de plantage.

C'est à la recherche de cette raison qu'il te faut travailler, avant de penser à la gestion d'erreurs...
Une fois la raison découverte, il te faut travailler à la mise en oeuvre d'un mécanisme en amont et non en aval.

La gestion d'erreur ne doit être envisagée qu'après ces démarches-là ... et uniquement s'il est vraiment impossible d'éviter une telle gestion (ce qui est assez rare).
lundi 24 décembre 2007 à 16:53:05 | Re : Tester si une macro est en cours d execution

helpvb

Réponse acceptée !
ok disons alors en cas de plantage intempestif.... y aurait pas simpelement une instruction permettant de tester si une maacro est en cours d execution ?
lundi 24 décembre 2007 à 22:55:18 | Re : Tester si une macro est en cours d execution

ghuysmans99

Membre Club
Réponse acceptée !
Je ne crois pas non ... Mais tu es censé avoir un code qui ne se plante pas !!
_______________________________________________________________________
VB.NETis good ...VB6is better
mercredi 26 décembre 2007 à 13:55:03 | Re : Tester si une macro est en cours d execution

us_30

Membre Club
Réponse acceptée !

Bonjour,

La question est un non sens. En effet, l'exécution d'une macro est exclusive. On ne pas lancer 2 macros en même temps... donc quand une macro est en cours d'exécution, elle gèle le reste, il devient impossible de tester si la macro est en cours, sauf dans la macro elle-même, mais cela n'a pas de sens...

Par contre, à partir d'un programme externe, la question serait très pertinente...

Amicalement,

Us.

dimanche 13 janvier 2008 à 03:50:55 | Re : Tester si une macro est en cours d execution

helpvb

Merci pour vos reponses mais avant d affirmer que la question est un non sens, il serait bon de réfléchir un peu...
En effet cela a tout son sens dans la mesure ou je souhaite tester dans le code vba des call back ('Worksheet Onchange, Onselection,...)si le code du call back s execute au travers d une de mes macros ou au travers d une manipulation utilisateur...
Amicalement...

dimanche 13 janvier 2008 à 10:01:16 | Re : Tester si une macro est en cours d execution

us_30

Membre Club

Bonjour helpvb,

Qu'on ne trompe pas sur mes propos, quand je dis que la question est un non sens, je ne dis pas que la question n'est pas intéressante.

Je reste sur ma position, faute de contre exemple. Mieux qu'un grand discours, un petit exemple qui consiste à programmer une action dans deux événements (déclenchés nécessairement par utilisateur), dont un contient une boucle d'attente de 5 secondes pour simuler donc un code qui s'exécute. Que soit une boucle d'attente ou un vrai code, cela ne change donc rien. On peut donc constater que le déclenchement des événement ne peuvent pas être simultannées. Ce qui justifie mes premiers propos : "donc quand une macro est en cours d'exécution, elle gèle le reste, il devient impossible de tester si la macro est en cours"

=

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
MsgBox "je sauve"
End Sub

Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
MsgBox "je change... et j'attend 5 secondes... Faites une autre action !"
t = Timer
Do
Loop Until Timer - t > 5
End Sub

=

A chaque changement de cellule SheetSelectionChange se déclenche avec un message et attend 5 secondes. Si on essait de sauvegarder pendant l'exécution ce qui déclenche BeforeSave, rien ne se produit. On n'a pas la main... Néanmoins, l'action reste en "mémoire tampon", et s'active juste après la première.

Amicalement,
Us.



Cette discussion est classée dans : macro, tester, execution, cours, macros


Répondre à ce message

Sujets en rapport avec ce message

Access - Problème d'enregistrement au cours de l'execution d'une macr [ par vdbadri ] Bonjours à tousJ'ai un problème lors de l'execution d'une macro, (cette macro est assez longue), elle intervient la creation ou suppression d'enregist VBA - Desactiver les autres macros pendant l'execution d'une autre [ par jordane45 ] Bonjour, la question n'est peut être pas très clair.. alors je vais essayer de reformuler [^^clinoeil1] Connetriez-vous un moyen d'empecher Excel (20 [Déplacé VB6 --> VBA] Macro Excel devient lente [ par bambival ] Bonjour a tous, Depuis quelques temps je fais face aune difficulte a laquelle je ne trouve pas de solution. En effet j ai realise une macro pour le tr Execution macro excel [ par bambival ] Bonjour a tous, Depuis quelques temps je fais face aune difficulte a laquelle je ne trouve pas de solution. En effet j ai realise une macro pour le [Déplacé VB6 --> VBA] Problème macro, formules ou ordi ? [ par scoobytor ] Bonjour, Je ne sais plus quoi faire. J'ai créé un fichier Excel pour gérer les patients du cabinet d'une amie Ostéo. Pour faire le suivi, j'ai créé [Catégorie modifiée VB6 -> VBA] macro excel [ par antoine171074 ] Bonjour, je suis un gros débutant en macro excel. J'essaie de venir à bout d'un petit programme tout simple, je veux que ma cellule soit rouge quand j Macro excel pour ouverture fichier excel ayant lui meme des macros [ par mimir81 ] Bonjour, Je souhaite ouvrir des fichiers excel à partir d'une macro excel. Jusque là pas de souci. Ça se complique car les fichiers en question ont u Execution d'une macro dans une cellule qui comporte une fonction [ par boyves ] Bonjour à tous, J'ai une macro qui s'éxecute que lorsque je clique sur les cellules. Ces cellules sont modifiées par une formule mais la macro Private Macro dans une feuille Excel invisible [ par victorcoasne ] Bonjour, J'ai créé quelques macros utilitaires que j'ai placé dans une feuille Excel dédiée afin de pouvoir déployer plus facilement les macros sur u Macros sur AutoCAD [ par nicoladm ] Bonjour,J'ai une ptite question toute bête mais qui pourrait m'être très utile, ainsi qu'à tout le monde.Y a t-il un moyen de faire une macro sur Auto


Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,076 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales