Exécution macro

guenfood

XLDnaute Occasionnel
Bonjour,

J'ai une msgbox qui après click sur le bouton 'OK' doit exécuter une macro qui contient ce code :
Code:
Sub Repondre()
'
' Repondre Macro
' Envoi du classeur via Lotus Notes
'
Application.SendKeys ('%L')
Application.SendKeys ('C')
Application.SendKeys ('~')'
'
End Sub

La commande de départ est celle-ci :
Code:
Private Sub CommandButton1_Click()
FrmDefinition.Hide
If MsgBox('Voulez-vous imprimer le questionnaire ?', vbYesNo) = vbYes Then
Application.ScreenUpdating = False
Sheets('Enquete').Visible = True
Sheets('Enquete').PrintOut
Sheets('Enquete').Visible = False
Else: MsgBox 'Veuillez cliquer sur OK pour envoyer le questionnaire à l'APAC Flux Espace 150', vbOKOnly
End If
Call Repondre
MsgBox 'Le questionnaire a bien été envoyé à l'APAC Flux Espace 150'
Application.Quit
End Sub
Le problème, c'est que cela ne se déclenche pas.
Comment faire pour que cela fontionne ?
 

PascalXLD

XLDnaute Barbatruc
Modérateur
Re

Tu as essayé de mettre un point d'arret histoire de voir où cela coinçait ??

Car ta macro peut se lancer mais je ne vois pas trop comment elle va t'envoyer ton mail par Lotus note. Faut dire que je n'y connais rien dans le domaine Lotus note.

Message édité par: Pascal76, à: 05/05/2006 09:26
 

guenfood

XLDnaute Occasionnel
En fait, j'ai adapté un fichier xla présent sur le site en téléchargement.

Celui ci ajoute un menu Lotus Notes.

La macro est donc censée correspondre à la saisie des touches ALT+L pour activer le menu Lotus Notes, puis la touche C, pour exécuter un sous-menu, et enfin la touche entrée qui valide le formulaire.

Quand j'exécute la macro directement, cela fonctionne nickel. Mais le fait de passer dans un USF et surtout par la msgbox, je crois que la fonction ALT+L ne marche pas.

Je pense qu'il faudrait d'abord faire en sorte de quitter la msgbox pour revenir sur la feuille afin que le code puisse s'exécuter.
 

guenfood

XLDnaute Occasionnel
Bon, en fait si j'enlève
Code:
MsgBox 'Le questionnaire a bien été envoyé à l'APAC Flux Espace 150'
Application.Quit
dans le code, ca fonctionne nickel.

Est ce qu'en mettant un temps d'attente ca changerait quelque chose ?
 

PascalXLD

XLDnaute Barbatruc
Modérateur
Re

et oui tu dois fermer excel par application.quit avant que tout soit fini.

Il faut de toute façon eviter ce genre de code. Si tu as un autre classeur non enregistré que tu avais ouvert avant tu risques de perdre tout ton travail.
 

Discussions similaires

Statistiques des forums

Discussions
312 495
Messages
2 088 964
Membres
103 992
dernier inscrit
Christine 974