Lancement d'une macro dans une autre feuille

benadry

XLDnaute Occasionnel
Bonjour le forum,

Je vous expose mon problème : dans un userform, j'ai une macro qui doit s'exécuter à partir de la réponse donnée à un message. Si la réponse est positive, je souhaite qu'une macro située sur une autre feuille se lance.

Voici un extrait de mon code :

Code:
Private Sub ValiderSaisie_Click()


Dim reponse As String

reponse = MsgBox("Les documents ont été mis à jour et enregistrés en fonction des données saisies." & vbLf & vbLf & "Voulez-vous maintenant effacer celles-ci et passer à un autre produit ?", vbYesNo + vbExclamation")

If reponse = No Then Exit Sub
If reponse = Yes Then


With Sheets("Feuil2")
Call SaveAsPdf

End With

With Sheets("Feuil3")
Call SaveAsPdf2

End With
J'ai essayé de plusieurs façons, selon ce que j'ai lu dans des forums :

en faisant
Code:
Sheets("Feuil2").Select
Call SaveAsPdf
Code:
Sheets("Feuil2").Select
SaveAsPdf
ou la solution dans le code ci-dessus et j'ai une erreur "Sub ou fonction non définie".

Quelqu'un pourrait-il me dire ce qu'il faut faire ?

Merci d'avance.

Cordialement.
 

phlaurent55

XLDnaute Barbatruc
Re : Lancement d'une macro dans une autre feuille

Bonjour benadry,

C'est le '' + '' apres vbYesNo qui semble poser probleme

À+
Philippe
 

Pierrot93

XLDnaute Barbatruc
Re : Lancement d'une macro dans une autre feuille

Bonjour,
bonjour Philippe,

modifie peut être ce qui suit ainsi :
Code:
Dim reponse As INTEGER

reponse = MsgBox("Les documents ont été mis à jour et enregistrés en fonction des données saisies." & vbLf & vbLf & "Voulez-vous maintenant effacer celles-ci et passer à un autre produit ?", vbYesNo + vbExclamation")

If reponse = VbNo Then Exit Sub
If reponse = VbYes Then
bon après midi
@+
 

benadry

XLDnaute Occasionnel
Re : Lancement d'une macro dans une autre feuille

Bonjour Philippe,
Bonjour Pierrot,

Merci pour vos réponses.

J'ai pris en compte vos deux suggestions et ça ne marche pas mieux : j'ai toujours la même erreur.

J'ai également modifié le code à plusieurs reprises avec

Code:
Sheets("Feuil2").Select
Call SaveAsPdf
Code:
Sheets("Feuil2").Select
SaveAsPdf
Code:
With Sheets("Feuil2")
Call SaveAsPdf
End With
Code:
With Sheets("Feuil2")
SaveAsPdf
End With
Auriez-vous une autre idée pour m'aider à avancer ?

Merci d'avance.

Cordialement.
 

Pierrot93

XLDnaute Barbatruc
Re : Lancement d'une macro dans une autre feuille

Re,

dans le code proposé, le dernier " est en trop...
Code:
Sub test()
Dim reponse As Integer

reponse = MsgBox("Les documents ont été mis à jour et enregistrés en fonction des données saisies." & vbLf & vbLf & "Voulez-vous maintenant effacer celles-ci et passer à un autre produit ?", vbYesNo + vbExclamation)

If reponse = vbNo Then Exit Sub
If reponse = vbYes Then MsgBox "ok"
End Sub
 

benadry

XLDnaute Occasionnel
Re : Lancement d'une macro dans une autre feuille

Re-,

Désolé, si je suis bouché et si je vous fais perdre votre temps ; mais, je plane complètement !

Voici donc mon code :

Code:
Private Sub ValiderSaisie_Click()


Dim reponse As Integer


reponse = MsgBox("Les documents ont été mis à jour et enregistrés en fonction des données saisies." & vbLf & vbLf & "Voulez-vous maintenant effacer celles-ci et passer à un autre agent ?", vbYesNo + vbExclamation, "VELP -  V2.0 - CPAM des Ardennes")
'ret = MsgBox("Le bulletin de salaire et la feuille de calcul des cotisations ont été mis à jour et enregistrés en fonction des données saisies." & vbLf & vbLf & "Voulez-vous maintenant effacer celles-ci et passer à un autre produit ?", vbYesNo + vbExclamation, "MonAppli")

If reponse = vbNo Then
Exit Sub
If reponse = vbYes Then MsgBox "ok"

With Sheets("Feuil2")
Call SaveAsPdf

End With

With Sheets("Feuil3")
Call SaveAsPdf2

End With

End If

End Sub
J'ai toujours la même erreur de Sub ou fonction non définie.

Je suis preneur de toute idée.

Merci d'avance.

Cordialement.
 

Pierrot93

XLDnaute Barbatruc
Re : Lancement d'une macro dans une autre feuille

Re,

problème dans ton "if" :
Code:
If reponse = vbNo Then Exit Sub
If reponse = vbYes Then 

With Sheets("Feuil2")
Call SaveAsPdf

End With

With Sheets("Feuil3")
Call SaveAsPdf2

End With

End If
et tes 2 blocs "with" ne servent à rien en l'état....
 

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