OVH Cloud OVH Cloud

Ouverture Formulaire

2 réponses
Avatar
Luis
Bonjour,
J'ai une commande sur un formulaire clients "B-CLIENTS"=20
pour ouvrir un formulaire "Commandes" avec la condition=20
qu'il existe une commande pour le client ouvert:
DoCmd.OpenForm "Commandes", acNormal, , "[NCLIENT]=3DFORMS!
[B-CLIENTS].[NCLIENT]"
'DoCmd Close acForm, "B-CLIENTS"
If IsNull(Forms![COMMANDES].[R=E9fCommande]) Then
Dim X As Integer
X =3D MsgBox("Il n'y a pas eut de commande pour ce=20
client !!!", vbYes)
If X =3D vbYes Then DoCmd.Close acForm, "Commandes"
DoCmd.OpenForm "B-CLIENTS"
End If
Exit Sub
Le probl=E8me que je rencontre, c'est que s'il n'y a pas de=20
commande pour ce client, le formulaire "Commandes" s'ouvre=20
en blanc, sans la messageBox pour commander sa fermeture.
Comment r=E9soudre le probl=E8me?
A bient=F4t.
Luis

2 réponses

Avatar
Xavier HUE
Bonjour Luis,

Avec la fonction DCount, qui devrait de permettre de
vérifier si effectivement tu as des commandes AVANT
d'ouvrir le formulaire Commande, tu pourrais faire ce qui
suit. C'est plus simple.

Dans l'évènement Sur Clic de ton bouton commandant
l'ouverture de ton formulaire commande:

If DCount
("TonChampNumeroCommande", "TaTableCommande","TonChampClien
t=" & Me.TonChampClient.Value) = 0 then
MsgBox "Pas de commande pour ce client",
VbExclamation+VbOkOnly
Else
DoCmd.OpenForm "Commandes", acNormal, , "[NCLIENT]=" &
Me.NCLIENT.Value
End If

Ca aide?
Cordialement.
Avatar
Luis
Bonjour,
Merci, ça aide effectivement.
Par contre le formulaire [B-CLIENTS], reste toujours
ouvert, dans ce cas ça m'arrange, mais il y a-t'il moyen
de commander l'ouverture du formulaire [Commande] en
fermant le formulaire [B-CLIENTS].
Merci et à bientôt.
Luis
-----Message d'origine-----
Bonjour Luis,

Avec la fonction DCount, qui devrait de permettre de
vérifier si effectivement tu as des commandes AVANT
d'ouvrir le formulaire Commande, tu pourrais faire ce qui
suit. C'est plus simple.

Dans l'évènement Sur Clic de ton bouton commandant
l'ouverture de ton formulaire commande:

If DCount

("TonChampNumeroCommande", "TaTableCommande","TonChampClien

t=" & Me.TonChampClient.Value) = 0 then
MsgBox "Pas de commande pour ce client",
VbExclamation+VbOkOnly
Else
DoCmd.OpenForm "Commandes", acNormal, , "[NCLIENT]=" &
Me.NCLIENT.Value
End If

Ca aide?
Cordialement.
.