Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Interrompre impression d'un état si pas de données

6 réponses
Avatar
Luis
Bonjour,
Depuis un formulaire je lance l'impression de 2 états et s'il n'y a pas de
données dans l'un ou l'autre des 2 états, l'impression ne se fasse pascomme
suit:

On Error GoTo Err_Commande25

DoCmd.OpenReport "CONTACTS", acNormal, ,
"[RAPPELER]=[forms]![IMPRESSIONS]![Texte27] or
[RENDEZ-VOUS]=[forms]![IMPRESSIONS]![Texte27]"
Commande25:
Resume Next
Err_Commande25:
msgbox "Impression interrompue,@ car aucun rendez-vous ni contact avec aucun
client n'est prévu pour cette date!!!@"
DoCmd.Close acReport, "CONTACTS"

Dim x As Integer
x = msgbox("Voulez-vous imprimer les rendez-vous avec les candidats",
vbYesNo + vbQuestion)
If x = vbNo Then Exit Sub

On Error GoTo Err_Commande251
DoCmd.OpenReport "RENDEZ-VOUS", acNormal, ,
"[RENDEZ_VOUS]=[forms]![IMPRESSIONS]![Texte27]"
Commande251:
Resume Next
Err_Commande251:

msgbox "Impression interrompue,@ car aucun rendez-vous avec aucun candidat
n'est prévu pour cette date!!!@"
DoCmd.Close acReport, "RENDEZ-VOUS"

Exit Sub

Malheureusement ça ne marche pas.

J'ai mis dans chaque état dans sans aucune donnée ce qui correspond à chaque
état et la j'ai les messages d'erreur.

Est-ce que vous savez comment faire?
Luis

6 réponses

Avatar
Jessy Sempere [MVP]
Bonjour

Lances l'ouverture de tes états depuis ton formulaire comme tu le fais
mais ne cherche pas à gérer l'absence de donnée à cet endroit.

Ensuite utilises l'évènement "sur aucune donnée" de ton état.
Tu peux mettre par exemple pour le premier :

msgbox "Impression interrompue,@ car aucun rendez-vous " _
& "ni contact avec aucun client n'est prévu pour cette date!!!@"
Docmd.CancelEvent

et forcément pour le deuxième :
msgbox "Impression interrompue,@ car aucun rendez-vous avec " _
& "aucun candidat n'est prévu pour cette date!!!@"
Docmd.CancelEvent

@+
Jessy Sempere - Access MVP

------------------------------------
Site @ccess : http://access.jessy.free.fr/
Pour l'efficacité de tous :
http://users.skynet.be/mpfa/
------------------------------------
"Luis" a écrit dans le message news:

Bonjour,
Depuis un formulaire je lance l'impression de 2 états et s'il n'y a pas de
données dans l'un ou l'autre des 2 états, l'impression ne se fasse
pascomme

suit:

On Error GoTo Err_Commande25

DoCmd.OpenReport "CONTACTS", acNormal, ,
"[RAPPELER]=[forms]![IMPRESSIONS]![Texte27] or
[RENDEZ-VOUS]=[forms]![IMPRESSIONS]![Texte27]"
Commande25:
Resume Next
Err_Commande25:
msgbox "Impression interrompue,@ car aucun rendez-vous ni contact avec
aucun

client n'est prévu pour cette date!!!@"
DoCmd.Close acReport, "CONTACTS"

Dim x As Integer
x = msgbox("Voulez-vous imprimer les rendez-vous avec les candidats",
vbYesNo + vbQuestion)
If x = vbNo Then Exit Sub

On Error GoTo Err_Commande251
DoCmd.OpenReport "RENDEZ-VOUS", acNormal, ,
"[RENDEZ_VOUS]=[forms]![IMPRESSIONS]![Texte27]"
Commande251:
Resume Next
Err_Commande251:

msgbox "Impression interrompue,@ car aucun rendez-vous avec aucun candidat
n'est prévu pour cette date!!!@"
DoCmd.Close acReport, "RENDEZ-VOUS"

Exit Sub

Malheureusement ça ne marche pas.

J'ai mis dans chaque état dans sans aucune donnée ce qui correspond à
chaque

état et la j'ai les messages d'erreur.

Est-ce que vous savez comment faire?
Luis


Avatar
Luis
Bonjour Jessy,
Voilà sur clic du formulaire j'ai mis simplement:
DoCmd.OpenReport "CONTACTS", acNormal, ,
"[RAPPELER]=[forms]![IMPRESSIONS]![Texte27] or
[RENDEZ-VOUS]=[forms]![IMPRESSIONS]![Texte27]"

Dim x As Integer
x = msgbox("Voulez-vous imprimer les rendez-vous avec les candidats",
vbYesNo + vbQuestion)
If x = vbNo Then Exit Sub


DoCmd.OpenReport "RENDEZ-VOUS", acNormal, ,
"[RENDEZ_VOUS]=[forms]![IMPRESSIONS]![Texte27]"

Dans les deux états sur l'évènement "sur aucune donnée" .....
du premier:
msgbox "Impression interrompue,@ car aucun rendez-vous " _
& "ni contact avec aucun client n'est prévu pour cette date!!!@"
Docmd.CancelEvent

et du deuxième:
msgbox "Impression interrompue,@ car aucun rendez-vous avec " _
& "aucun candidat n'est prévu pour cette date!!!@"
Docmd.CancelEvent

Et c'est là que le problème se pose, car j'ai une erreur:
S'il n'y a pas de données le message 'Impression interrompue ...s'ouvre
comme prévu, mais lorsque je clique 'Ok' de ce message, au lieu d'avoir la
deuxième boîte de dialogue me demandant si je veux imprimer "RENDEZ-VOUS",
j'ai un bogue avec

Erreur d'exécution '2501'

l'action openRecord a été annulée
et en surbrillance dans le formulaire:

DoCmd.OpenReport "CONTACTS", acNormal, ,
"[RAPPELER]=[forms]![IMPRESSIONS]![Texte27] or
[RENDEZ-VOUS]=[forms]![IMPRESSIONS]![Texte27]"

Comment éviter ça et faire en sorte que la procédure se déroule normalement?

Merci Jessy.
Luis

Bonjour

Lances l'ouverture de tes états depuis ton formulaire comme tu le fais
mais ne cherche pas à gérer l'absence de donnée à cet endroit.

Ensuite utilises l'évènement "sur aucune donnée" de ton état.
Tu peux mettre par exemple pour le premier :

msgbox "Impression interrompue,@ car aucun rendez-vous " _
& "ni contact avec aucun client n'est prévu pour cette date!!!@"
Docmd.CancelEvent

et forcément pour le deuxième :
msgbox "Impression interrompue,@ car aucun rendez-vous avec " _
& "aucun candidat n'est prévu pour cette date!!!@"
Docmd.CancelEvent

@+
Jessy Sempere - Access MVP

------------------------------------
Site @ccess : http://access.jessy.free.fr/
Pour l'efficacité de tous :
http://users.skynet.be/mpfa/
------------------------------------
"Luis" a écrit dans le message news:

Bonjour,
Depuis un formulaire je lance l'impression de 2 états et s'il n'y a pas de
données dans l'un ou l'autre des 2 états, l'impression ne se fasse
pascomme

suit:

On Error GoTo Err_Commande25

DoCmd.OpenReport "CONTACTS", acNormal, ,
"[RAPPELER]=[forms]![IMPRESSIONS]![Texte27] or
[RENDEZ-VOUS]=[forms]![IMPRESSIONS]![Texte27]"
Commande25:
Resume Next
Err_Commande25:
msgbox "Impression interrompue,@ car aucun rendez-vous ni contact avec
aucun

client n'est prévu pour cette date!!!@"
DoCmd.Close acReport, "CONTACTS"

Dim x As Integer
x = msgbox("Voulez-vous imprimer les rendez-vous avec les candidats",
vbYesNo + vbQuestion)
If x = vbNo Then Exit Sub

On Error GoTo Err_Commande251
DoCmd.OpenReport "RENDEZ-VOUS", acNormal, ,
"[RENDEZ_VOUS]=[forms]![IMPRESSIONS]![Texte27]"
Commande251:
Resume Next
Err_Commande251:

msgbox "Impression interrompue,@ car aucun rendez-vous avec aucun candidat
n'est prévu pour cette date!!!@"
DoCmd.Close acReport, "RENDEZ-VOUS"

Exit Sub

Malheureusement ça ne marche pas.

J'ai mis dans chaque état dans sans aucune donnée ce qui correspond à
chaque

état et la j'ai les messages d'erreur.

Est-ce que vous savez comment faire?
Luis







Avatar
Jessy Sempere [MVP]
Bonjour

Tu dois rajouter une gestion d'erreur dans ton formulaire pour gérer ça,
exemple :

On Error GoTo ErrPrint

{là tu mets ton code...}

Exit Sub

ErrPrint:
If Err = 2501 Then Resume Next 'ou exit sub c'est comme tu veux
MsgBox Err.Number & Err.Description


@+
Jessy Sempere - Access MVP

------------------------------------
Site @ccess : http://access.jessy.free.fr/
Pour l'efficacité de tous :
http://users.skynet.be/mpfa/
------------------------------------
"Luis" a écrit dans le message news:

Bonjour Jessy,
Voilà sur clic du formulaire j'ai mis simplement:
DoCmd.OpenReport "CONTACTS", acNormal, ,
"[RAPPELER]=[forms]![IMPRESSIONS]![Texte27] or
[RENDEZ-VOUS]=[forms]![IMPRESSIONS]![Texte27]"

Dim x As Integer
x = msgbox("Voulez-vous imprimer les rendez-vous avec les candidats",
vbYesNo + vbQuestion)
If x = vbNo Then Exit Sub


DoCmd.OpenReport "RENDEZ-VOUS", acNormal, ,
"[RENDEZ_VOUS]=[forms]![IMPRESSIONS]![Texte27]"

Dans les deux états sur l'évènement "sur aucune donnée" .....
du premier:
msgbox "Impression interrompue,@ car aucun rendez-vous " _
& "ni contact avec aucun client n'est prévu pour cette date!!!@"
Docmd.CancelEvent

et du deuxième:
msgbox "Impression interrompue,@ car aucun rendez-vous avec " _
& "aucun candidat n'est prévu pour cette date!!!@"
Docmd.CancelEvent

Et c'est là que le problème se pose, car j'ai une erreur:
S'il n'y a pas de données le message 'Impression interrompue ...s'ouvre
comme prévu, mais lorsque je clique 'Ok' de ce message, au lieu d'avoir la
deuxième boîte de dialogue me demandant si je veux imprimer "RENDEZ-VOUS",
j'ai un bogue avec

Erreur d'exécution '2501'

l'action openRecord a été annulée
et en surbrillance dans le formulaire:

DoCmd.OpenReport "CONTACTS", acNormal, ,
"[RAPPELER]=[forms]![IMPRESSIONS]![Texte27] or
[RENDEZ-VOUS]=[forms]![IMPRESSIONS]![Texte27]"

Comment éviter ça et faire en sorte que la procédure se déroule
normalement?


Merci Jessy.
Luis

Bonjour

Lances l'ouverture de tes états depuis ton formulaire comme tu le fais
mais ne cherche pas à gérer l'absence de donnée à cet endroit.

Ensuite utilises l'évènement "sur aucune donnée" de ton état.
Tu peux mettre par exemple pour le premier :

msgbox "Impression interrompue,@ car aucun rendez-vous " _
& "ni contact avec aucun client n'est prévu pour cette date!!!@"
Docmd.CancelEvent

et forcément pour le deuxième :
msgbox "Impression interrompue,@ car aucun rendez-vous avec " _
& "aucun candidat n'est prévu pour cette date!!!@"
Docmd.CancelEvent

@+
Jessy Sempere - Access MVP

------------------------------------
Site @ccess : http://access.jessy.free.fr/
Pour l'efficacité de tous :
http://users.skynet.be/mpfa/
------------------------------------
"Luis" a écrit dans le message news:

Bonjour,
Depuis un formulaire je lance l'impression de 2 états et s'il n'y a
pas de



données dans l'un ou l'autre des 2 états, l'impression ne se fasse
pascomme

suit:

On Error GoTo Err_Commande25

DoCmd.OpenReport "CONTACTS", acNormal, ,
"[RAPPELER]=[forms]![IMPRESSIONS]![Texte27] or
[RENDEZ-VOUS]=[forms]![IMPRESSIONS]![Texte27]"
Commande25:
Resume Next
Err_Commande25:
msgbox "Impression interrompue,@ car aucun rendez-vous ni contact avec
aucun

client n'est prévu pour cette date!!!@"
DoCmd.Close acReport, "CONTACTS"

Dim x As Integer
x = msgbox("Voulez-vous imprimer les rendez-vous avec les candidats",
vbYesNo + vbQuestion)
If x = vbNo Then Exit Sub

On Error GoTo Err_Commande251
DoCmd.OpenReport "RENDEZ-VOUS", acNormal, ,
"[RENDEZ_VOUS]=[forms]![IMPRESSIONS]![Texte27]"
Commande251:
Resume Next
Err_Commande251:

msgbox "Impression interrompue,@ car aucun rendez-vous avec aucun
candidat



n'est prévu pour cette date!!!@"
DoCmd.Close acReport, "RENDEZ-VOUS"

Exit Sub

Malheureusement ça ne marche pas.

J'ai mis dans chaque état dans sans aucune donnée ce qui correspond à
chaque

état et la j'ai les messages d'erreur.

Est-ce que vous savez comment faire?
Luis









Avatar
Luis
Merci Jessy,
Mais ça ne fonctionne toujours pas, cette fois c'est une autre erreur qui se
produit.
Je clique sur imprimer et même s'il y a des données j'ai le message

"Impression interrompue, car aucun rendez-vous ni contact avec aucun client
n'est prévu pour cette date!!!"

Alors que si j'enlève la procédure dans sans données de l'état, j'ai
l'impression avec tous les clients à appeler et tous les rendez-vous.

Et la même chose pour l'état qui suit.

Luis

Bonjour

Tu dois rajouter une gestion d'erreur dans ton formulaire pour gérer ça,
exemple :

On Error GoTo ErrPrint

{là tu mets ton code...}

Exit Sub

ErrPrint:
If Err = 2501 Then Resume Next 'ou exit sub c'est comme tu veux
MsgBox Err.Number & Err.Description


@+
Jessy Sempere - Access MVP

------------------------------------
Site @ccess : http://access.jessy.free.fr/
Pour l'efficacité de tous :
http://users.skynet.be/mpfa/
------------------------------------
"Luis" a écrit dans le message news:

Bonjour Jessy,
Voilà sur clic du formulaire j'ai mis simplement:
DoCmd.OpenReport "CONTACTS", acNormal, ,
"[RAPPELER]=[forms]![IMPRESSIONS]![Texte27] or
[RENDEZ-VOUS]=[forms]![IMPRESSIONS]![Texte27]"

Dim x As Integer
x = msgbox("Voulez-vous imprimer les rendez-vous avec les candidats",
vbYesNo + vbQuestion)
If x = vbNo Then Exit Sub


DoCmd.OpenReport "RENDEZ-VOUS", acNormal, ,
"[RENDEZ_VOUS]=[forms]![IMPRESSIONS]![Texte27]"

Dans les deux états sur l'évènement "sur aucune donnée" .....
du premier:
msgbox "Impression interrompue,@ car aucun rendez-vous " _
& "ni contact avec aucun client n'est prévu pour cette date!!!@"
Docmd.CancelEvent

et du deuxième:
msgbox "Impression interrompue,@ car aucun rendez-vous avec " _
& "aucun candidat n'est prévu pour cette date!!!@"
Docmd.CancelEvent

Et c'est là que le problème se pose, car j'ai une erreur:
S'il n'y a pas de données le message 'Impression interrompue ...s'ouvre
comme prévu, mais lorsque je clique 'Ok' de ce message, au lieu d'avoir la
deuxième boîte de dialogue me demandant si je veux imprimer "RENDEZ-VOUS",
j'ai un bogue avec

Erreur d'exécution '2501'

l'action openRecord a été annulée
et en surbrillance dans le formulaire:

DoCmd.OpenReport "CONTACTS", acNormal, ,
"[RAPPELER]=[forms]![IMPRESSIONS]![Texte27] or
[RENDEZ-VOUS]=[forms]![IMPRESSIONS]![Texte27]"

Comment éviter ça et faire en sorte que la procédure se déroule
normalement?


Merci Jessy.
Luis

Bonjour

Lances l'ouverture de tes états depuis ton formulaire comme tu le fais
mais ne cherche pas à gérer l'absence de donnée à cet endroit.

Ensuite utilises l'évènement "sur aucune donnée" de ton état.
Tu peux mettre par exemple pour le premier :

msgbox "Impression interrompue,@ car aucun rendez-vous " _
& "ni contact avec aucun client n'est prévu pour cette date!!!@"
Docmd.CancelEvent

et forcément pour le deuxième :
msgbox "Impression interrompue,@ car aucun rendez-vous avec " _
& "aucun candidat n'est prévu pour cette date!!!@"
Docmd.CancelEvent

@+
Jessy Sempere - Access MVP

------------------------------------
Site @ccess : http://access.jessy.free.fr/
Pour l'efficacité de tous :
http://users.skynet.be/mpfa/
------------------------------------
"Luis" a écrit dans le message news:

Bonjour,
Depuis un formulaire je lance l'impression de 2 états et s'il n'y a
pas de



données dans l'un ou l'autre des 2 états, l'impression ne se fasse
pascomme

suit:

On Error GoTo Err_Commande25

DoCmd.OpenReport "CONTACTS", acNormal, ,
"[RAPPELER]=[forms]![IMPRESSIONS]![Texte27] or
[RENDEZ-VOUS]=[forms]![IMPRESSIONS]![Texte27]"
Commande25:
Resume Next
Err_Commande25:
msgbox "Impression interrompue,@ car aucun rendez-vous ni contact avec
aucun

client n'est prévu pour cette date!!!@"
DoCmd.Close acReport, "CONTACTS"

Dim x As Integer
x = msgbox("Voulez-vous imprimer les rendez-vous avec les candidats",
vbYesNo + vbQuestion)
If x = vbNo Then Exit Sub

On Error GoTo Err_Commande251
DoCmd.OpenReport "RENDEZ-VOUS", acNormal, ,
"[RENDEZ_VOUS]=[forms]![IMPRESSIONS]![Texte27]"
Commande251:
Resume Next
Err_Commande251:

msgbox "Impression interrompue,@ car aucun rendez-vous avec aucun
candidat



n'est prévu pour cette date!!!@"
DoCmd.Close acReport, "RENDEZ-VOUS"

Exit Sub

Malheureusement ça ne marche pas.

J'ai mis dans chaque état dans sans aucune donnée ce qui correspond à
chaque

état et la j'ai les messages d'erreur.

Est-ce que vous savez comment faire?
Luis














Avatar
Jessy Sempere [MVP]
Re,

Bon je crois que tu n'as pas du modifier complètement ou correctement les
codes...
Peux-tu donner le code complet de ton formulaire et aussi le code complet
que
tu as mis dans l'état ?

@+
Jessy Sempere - Access MVP

------------------------------------
Site @ccess : http://access.jessy.free.fr/
Pour l'efficacité de tous :
http://users.skynet.be/mpfa/
------------------------------------
"Luis" a écrit dans le message news:

Merci Jessy,
Mais ça ne fonctionne toujours pas, cette fois c'est une autre erreur qui
se

produit.
Je clique sur imprimer et même s'il y a des données j'ai le message

"Impression interrompue, car aucun rendez-vous ni contact avec aucun
client

n'est prévu pour cette date!!!"

Alors que si j'enlève la procédure dans sans données de l'état, j'ai
l'impression avec tous les clients à appeler et tous les rendez-vous.

Et la même chose pour l'état qui suit.

Luis

Bonjour

Tu dois rajouter une gestion d'erreur dans ton formulaire pour gérer ça,
exemple :

On Error GoTo ErrPrint

{là tu mets ton code...}

Exit Sub

ErrPrint:
If Err = 2501 Then Resume Next 'ou exit sub c'est comme tu veux
MsgBox Err.Number & Err.Description


@+
Jessy Sempere - Access MVP

------------------------------------
Site @ccess : http://access.jessy.free.fr/
Pour l'efficacité de tous :
http://users.skynet.be/mpfa/
------------------------------------
"Luis" a écrit dans le message news:

Bonjour Jessy,
Voilà sur clic du formulaire j'ai mis simplement:
DoCmd.OpenReport "CONTACTS", acNormal, ,
"[RAPPELER]=[forms]![IMPRESSIONS]![Texte27] or
[RENDEZ-VOUS]=[forms]![IMPRESSIONS]![Texte27]"

Dim x As Integer
x = msgbox("Voulez-vous imprimer les rendez-vous avec les candidats",
vbYesNo + vbQuestion)
If x = vbNo Then Exit Sub


DoCmd.OpenReport "RENDEZ-VOUS", acNormal, ,
"[RENDEZ_VOUS]=[forms]![IMPRESSIONS]![Texte27]"

Dans les deux états sur l'évènement "sur aucune donnée" .....
du premier:
msgbox "Impression interrompue,@ car aucun rendez-vous " _
& "ni contact avec aucun client n'est prévu pour cette date!!!@"
Docmd.CancelEvent

et du deuxième:
msgbox "Impression interrompue,@ car aucun rendez-vous avec " _
& "aucun candidat n'est prévu pour cette date!!!@"
Docmd.CancelEvent

Et c'est là que le problème se pose, car j'ai une erreur:
S'il n'y a pas de données le message 'Impression interrompue
...s'ouvre



comme prévu, mais lorsque je clique 'Ok' de ce message, au lieu
d'avoir la



deuxième boîte de dialogue me demandant si je veux imprimer
"RENDEZ-VOUS",



j'ai un bogue avec

Erreur d'exécution '2501'

l'action openRecord a été annulée
et en surbrillance dans le formulaire:

DoCmd.OpenReport "CONTACTS", acNormal, ,
"[RAPPELER]=[forms]![IMPRESSIONS]![Texte27] or
[RENDEZ-VOUS]=[forms]![IMPRESSIONS]![Texte27]"

Comment éviter ça et faire en sorte que la procédure se déroule
normalement?


Merci Jessy.
Luis

Bonjour

Lances l'ouverture de tes états depuis ton formulaire comme tu le
fais




mais ne cherche pas à gérer l'absence de donnée à cet endroit.

Ensuite utilises l'évènement "sur aucune donnée" de ton état.
Tu peux mettre par exemple pour le premier :

msgbox "Impression interrompue,@ car aucun rendez-vous " _
& "ni contact avec aucun client n'est prévu pour cette
date!!!@"




Docmd.CancelEvent

et forcément pour le deuxième :
msgbox "Impression interrompue,@ car aucun rendez-vous avec " _
& "aucun candidat n'est prévu pour cette date!!!@"
Docmd.CancelEvent

@+
Jessy Sempere - Access MVP

------------------------------------
Site @ccess : http://access.jessy.free.fr/
Pour l'efficacité de tous :
http://users.skynet.be/mpfa/
------------------------------------
"Luis" a écrit dans le message
news:





Bonjour,
Depuis un formulaire je lance l'impression de 2 états et s'il n'y
a





pas de
données dans l'un ou l'autre des 2 états, l'impression ne se fasse
pascomme

suit:

On Error GoTo Err_Commande25

DoCmd.OpenReport "CONTACTS", acNormal, ,
"[RAPPELER]=[forms]![IMPRESSIONS]![Texte27] or
[RENDEZ-VOUS]=[forms]![IMPRESSIONS]![Texte27]"
Commande25:
Resume Next
Err_Commande25:
msgbox "Impression interrompue,@ car aucun rendez-vous ni contact
avec





aucun
client n'est prévu pour cette date!!!@"
DoCmd.Close acReport, "CONTACTS"

Dim x As Integer
x = msgbox("Voulez-vous imprimer les rendez-vous avec les
candidats",





vbYesNo + vbQuestion)
If x = vbNo Then Exit Sub

On Error GoTo Err_Commande251
DoCmd.OpenReport "RENDEZ-VOUS", acNormal, ,
"[RENDEZ_VOUS]=[forms]![IMPRESSIONS]![Texte27]"
Commande251:
Resume Next
Err_Commande251:

msgbox "Impression interrompue,@ car aucun rendez-vous avec aucun
candidat



n'est prévu pour cette date!!!@"
DoCmd.Close acReport, "RENDEZ-VOUS"

Exit Sub

Malheureusement ça ne marche pas.

J'ai mis dans chaque état dans sans aucune donnée ce qui
correspond à





chaque
état et la j'ai les messages d'erreur.

Est-ce que vous savez comment faire?
Luis
















Avatar
Luis
Rebonjour,

Voilà le code qui se trouve dans le formulaire:

On Error GoTo ErrPrint

DoCmd.OpenReport "CONTACTS", acViewPreview, ,
"[RAPPELER]=[forms]![IMPRESSIONS]![Texte27] or
[RENDEZ-VOUS]=[forms]![IMPRESSIONS]![Texte27]"

Dim x As Integer
x = msgbox("Voulez-vous imprimer les rendez-vous avec les candidats",
vbYesNo + vbQuestion)
If x = vbNo Then Exit Sub


DoCmd.OpenReport "RENDEZ-VOUS", acNormal, ,
"[RENDEZ_VOUS]=[forms]![IMPRESSIONS]![Texte27]"

'msgbox "Impression interrompue,@ car aucun rendez-vous avec aucun candidat
n'est prévu pour cette date!!!@"
'DoCmd.Close acReport, "RENDEZ-VOUS"
Exit Sub

ErrPrint:
If Err = 2501 Then Resume Next 'ou exit sub c'est comme tu veux
msgbox Err.Number & Err.Description

Dans l'état CONTACTS à sans aucune donnée:

msgbox "Impression interrompue,@ car aucun rendez-vous ni contact avec aucun
client n'est prévu pour cette date!!!@"
DoCmd.CancelEvent

Dans l'état "RENDEZ-VOUS" à sans aucune donnée:

msgbox "Impression interrompue,@ car aucun rendez-vous avec aucun candidat
n'est prévu pour cette date!!!@"
DoCmd.CancelEvent

Voilà ce qu'il y a.

Luis



Re,

Bon je crois que tu n'as pas du modifier complètement ou correctement les
codes...
Peux-tu donner le code complet de ton formulaire et aussi le code complet
que
tu as mis dans l'état ?

@+
Jessy Sempere - Access MVP

------------------------------------
Site @ccess : http://access.jessy.free.fr/
Pour l'efficacité de tous :
http://users.skynet.be/mpfa/
------------------------------------
"Luis" a écrit dans le message news:

Merci Jessy,
Mais ça ne fonctionne toujours pas, cette fois c'est une autre erreur qui
se

produit.
Je clique sur imprimer et même s'il y a des données j'ai le message

"Impression interrompue, car aucun rendez-vous ni contact avec aucun
client

n'est prévu pour cette date!!!"

Alors que si j'enlève la procédure dans sans données de l'état, j'ai
l'impression avec tous les clients à appeler et tous les rendez-vous.

Et la même chose pour l'état qui suit.

Luis

Bonjour

Tu dois rajouter une gestion d'erreur dans ton formulaire pour gérer ça,
exemple :

On Error GoTo ErrPrint

{là tu mets ton code...}

Exit Sub

ErrPrint:
If Err = 2501 Then Resume Next 'ou exit sub c'est comme tu veux
MsgBox Err.Number & Err.Description


@+
Jessy Sempere - Access MVP

------------------------------------
Site @ccess : http://access.jessy.free.fr/
Pour l'efficacité de tous :
http://users.skynet.be/mpfa/
------------------------------------
"Luis" a écrit dans le message news:

Bonjour Jessy,
Voilà sur clic du formulaire j'ai mis simplement:
DoCmd.OpenReport "CONTACTS", acNormal, ,
"[RAPPELER]=[forms]![IMPRESSIONS]![Texte27] or
[RENDEZ-VOUS]=[forms]![IMPRESSIONS]![Texte27]"

Dim x As Integer
x = msgbox("Voulez-vous imprimer les rendez-vous avec les candidats",
vbYesNo + vbQuestion)
If x = vbNo Then Exit Sub


DoCmd.OpenReport "RENDEZ-VOUS", acNormal, ,
"[RENDEZ_VOUS]=[forms]![IMPRESSIONS]![Texte27]"

Dans les deux états sur l'évènement "sur aucune donnée" .....
du premier:
msgbox "Impression interrompue,@ car aucun rendez-vous " _
& "ni contact avec aucun client n'est prévu pour cette date!!!@"
Docmd.CancelEvent

et du deuxième:
msgbox "Impression interrompue,@ car aucun rendez-vous avec " _
& "aucun candidat n'est prévu pour cette date!!!@"
Docmd.CancelEvent

Et c'est là que le problème se pose, car j'ai une erreur:
S'il n'y a pas de données le message 'Impression interrompue
....s'ouvre



comme prévu, mais lorsque je clique 'Ok' de ce message, au lieu
d'avoir la



deuxième boîte de dialogue me demandant si je veux imprimer
"RENDEZ-VOUS",



j'ai un bogue avec

Erreur d'exécution '2501'

l'action openRecord a été annulée
et en surbrillance dans le formulaire:

DoCmd.OpenReport "CONTACTS", acNormal, ,
"[RAPPELER]=[forms]![IMPRESSIONS]![Texte27] or
[RENDEZ-VOUS]=[forms]![IMPRESSIONS]![Texte27]"

Comment éviter ça et faire en sorte que la procédure se déroule
normalement?


Merci Jessy.
Luis

Bonjour

Lances l'ouverture de tes états depuis ton formulaire comme tu le
fais




mais ne cherche pas à gérer l'absence de donnée à cet endroit.

Ensuite utilises l'évènement "sur aucune donnée" de ton état.
Tu peux mettre par exemple pour le premier :

msgbox "Impression interrompue,@ car aucun rendez-vous " _
& "ni contact avec aucun client n'est prévu pour cette
date!!!@"




Docmd.CancelEvent

et forcément pour le deuxième :
msgbox "Impression interrompue,@ car aucun rendez-vous avec " _
& "aucun candidat n'est prévu pour cette date!!!@"
Docmd.CancelEvent

@+
Jessy Sempere - Access MVP

------------------------------------
Site @ccess : http://access.jessy.free.fr/
Pour l'efficacité de tous :
http://users.skynet.be/mpfa/
------------------------------------
"Luis" a écrit dans le message
news:





Bonjour,
Depuis un formulaire je lance l'impression de 2 états et s'il n'y
a





pas de
données dans l'un ou l'autre des 2 états, l'impression ne se fasse
pascomme

suit:

On Error GoTo Err_Commande25

DoCmd.OpenReport "CONTACTS", acNormal, ,
"[RAPPELER]=[forms]![IMPRESSIONS]![Texte27] or
[RENDEZ-VOUS]=[forms]![IMPRESSIONS]![Texte27]"
Commande25:
Resume Next
Err_Commande25:
msgbox "Impression interrompue,@ car aucun rendez-vous ni contact
avec





aucun
client n'est prévu pour cette date!!!@"
DoCmd.Close acReport, "CONTACTS"

Dim x As Integer
x = msgbox("Voulez-vous imprimer les rendez-vous avec les
candidats",





vbYesNo + vbQuestion)
If x = vbNo Then Exit Sub

On Error GoTo Err_Commande251
DoCmd.OpenReport "RENDEZ-VOUS", acNormal, ,
"[RENDEZ_VOUS]=[forms]![IMPRESSIONS]![Texte27]"
Commande251:
Resume Next
Err_Commande251:

msgbox "Impression interrompue,@ car aucun rendez-vous avec aucun
candidat



n'est prévu pour cette date!!!@"
DoCmd.Close acReport, "RENDEZ-VOUS"

Exit Sub

Malheureusement ça ne marche pas.

J'ai mis dans chaque état dans sans aucune donnée ce qui
correspond à





chaque
état et la j'ai les messages d'erreur.

Est-ce que vous savez comment faire?
Luis