utilisation de l'instruction Doevents

S

Solcarnus

Guest
Bonjour a tous

J'ai un petit problème avec cette macro qui se comporte differement suivant qu'elle est executée en debug ou pas. Je pense que ce problème est lié à l'utilisation incorrecte de l'instruction Doevents

Voici le code que j'utilise:
********************************************************
dlgAnswer = Application.Dialogs(xlDialogSaveAs).Show
DoEvents
If Not dlgAnswer Then
'il ne se passe rien

Else
l_namea = ActiveWorkbook.Name
'saving as *.csv
Sheets(1).Activate
ActiveWorkbook.SaveAs FileFormat:=xlCSV
l_nameb = ActiveWorkbook.Name
Sheets('Form').Select
Msg = 'Two files have been generated :' & vbCrLf & ' -' & l_namea & vbCrLf & ' -' & l_nameb & vbCrLf & 'Please send them to your focal point.'
Response = MsgBox(Msg)
********************************************************

Je pense que le probleme vient de l'instruction doevents que je n'arrive pa à utiliser correctement, donc l'execution se poursuit sans attendre la réponse de l'utilisateur alors qu'en debug on execute pas à pas ce qui laisse le temps à l'utilisateur de compléter la boite de dialogue.
Pourriez vous m'indiquer comment utiliser correctement cette instruction? Pensez vous que c'est bien elle qui est à l'origine de ce problème?

Je vous remercie d'avance de prendre le temps de vous plonger dans ce problème.
A bientôt
 

Creepy

XLDnaute Accro
Hello le Forum, Solcarnus,

Jene comprends pas bien ta question. Parce quechez moi que je fasse en pas à pas ou en normal la macro s'arrete bien temps que je n'ai pas validé ou annulé la boite de dialogue.

Doevents sert à 'rafraichir' le systeme. Elle permet derendre la main au système pour qu'il se mette à jour avant de poursuivre. On l'utilise dans les codes très rapide pour redonner la main au systeme par exemple quand tu joues avec des fichiers.

@+

Creepy
 
S

Solcarnus

Guest
En fait la macro demande à l'utilisateur de lui spécifier un nom de fichier. Le probeme est que lorsqu'il clique sur 'enregistrer' et que la boite de dialogue se ferme, le fichier n'est pas enregistré en CSV et la pop-up

Msg = \\'Two files have been generated :\\' & vbCrLf & \\' -\\' & l_namea & vbCrLf & \\' -\\' &
l_nameb & vbCrLf & \\'Please send them to your focal point.\\'
Response = MsgBox(Msg)

n'apparait pas. Ce comportement n'apparait pas en debug, ou l'execution du programme s'accomplit normalement (l'enregistrement en CSV est réalisé et la pop-up apparait. Voilà j'espère avoir été plus clair.

A bientôt
 

Créez un compte ou connectez vous pour répondre

Vous devez être membre afin de pouvoir répondre ici

Créer un compte

Créez un compte Excel Downloads. C'est simple!

Connexion

Vous avez déjà un compte? Connectez vous ici.

Haut Bas