Permettre à une fonction de s' exécuter avant que le programme ne se termine

Le
Guy FALESSE
Bonjour à tous,

Je sais que cela existe, mais je ne sais plus comment.
Voici donc ma sub:

Private Sub Commande12_Click()
Dim Réponse As Integer, retval
Réponse = MsgBox("cette date: " & Date & " est-elle bien celle
d'aujourd'hui", vbQuestion + vbYesNo, "Confirmation de date")
If Réponse = vbYes Then
DoCmd.Quit
Else
Réponse = MsgBox("Veuillez donc changer cette date" & vbLf & _
"en apportant les changements dans la" & vbLf & _
"fenêtre qui va s'ouvrir", vbExclamation, "Changement de date")
retval = Shell("rundll32.exe shell32.dll,Control_RunDLL
timedate.cpl,,0", vbNormalFocus)
End If
DoCmd.Quit 'le programme est quitté avant que le
changement de date n'ait été effectué
End Sub

Merci d'avance pour vos réponses :-)
@+

Guy FALESSE
Vos réponses
Trier par : date / pertinence
Guy FALESSE
Le #6170881
Bonjour à tous,
J'ai ajouté Doevents, mais ça ne fonctionne pas, le programme se ferme avant
que la fonction n'ai été réalisée.
@+

Guy FALESSE


"Guy FALESSE"
Bonjour à tous,

Je sais que cela existe, mais je ne sais plus comment.
Voici donc ma sub:

Private Sub Commande12_Click()
Dim Réponse As Integer, retval
Réponse = MsgBox("cette date: " & Date & " est-elle bien celle
d'aujourd'hui", vbQuestion + vbYesNo, "Confirmation de date")
If Réponse = vbYes Then
DoCmd.Quit
Else
Réponse = MsgBox("Veuillez donc changer cette date" & vbLf & _
"en apportant les changements dans la" & vbLf & _
"fenêtre qui va s'ouvrir", vbExclamation, "Changement de
date")
retval = Shell("rundll32.exe shell32.dll,Control_RunDLL
timedate.cpl,,0", vbNormalFocus)
End If
DoCmd.Quit 'le programme est quitté avant que le
changement de date n'ait été effectué
End Sub

Merci d'avance pour vos réponses :-)
@+

Guy FALESSE



ze Titi
Le #6170811
Bonjour Guy FALESSE

C'est certainement de ça que tu veux parler:

http://officesystem.access.free.fr/apishellwait.htm


Dans ton message
Bonjour à tous,
J'ai ajouté Doevents, mais ça ne fonctionne pas, le programme se ferme avant
que la fonction n'ai été réalisée.
@+

Guy FALESSE


"Guy FALESSE"
Bonjour à tous,

Je sais que cela existe, mais je ne sais plus comment.
Voici donc ma sub:

Private Sub Commande12_Click()
Dim Réponse As Integer, retval
Réponse = MsgBox("cette date: " & Date & " est-elle bien celle
d'aujourd'hui", vbQuestion + vbYesNo, "Confirmation de date")
If Réponse = vbYes Then
DoCmd.Quit
Else
Réponse = MsgBox("Veuillez donc changer cette date" & vbLf & _
"en apportant les changements dans la" & vbLf & _
"fenêtre qui va s'ouvrir", vbExclamation, "Changement de date")
retval = Shell("rundll32.exe shell32.dll,Control_RunDLL
timedate.cpl,,0", vbNormalFocus)
End If
DoCmd.Quit 'le programme est quitté avant que le
changement de date n'ait été effectué
End Sub

Merci d'avance pour vos réponses :-)
@+

Guy FALESSE




--
Voilou !
Cordialement,

Ze Titi


Guy FALESSE
Le #6170771
Salut ZeTiti,
Merci de ta réponse et pour l'info,

Mais, j'ai fait ça
ShellWait("rundll32.exe shell32.dll,Control_RunDLL timedate.cpl,,0",
vbNormalFocus) = 1
et j'ai comme réponse sub ou fonction non définie, alors que j'ai bien créé
un nouveau module, à moins qu'il ne faille mettre cette fonction là où se
trouve mon formulaire, je vérifie.
@+
Guy FALESSE

"ze Titi"
Bonjour Guy FALESSE

C'est certainement de ça que tu veux parler:

http://officesystem.access.free.fr/apishellwait.htm


Dans ton message
Bonjour à tous,
J'ai ajouté Doevents, mais ça ne fonctionne pas, le programme se ferme
avant que la fonction n'ai été réalisée.
@+

Guy FALESSE


"Guy FALESSE"
Bonjour à tous,

Je sais que cela existe, mais je ne sais plus comment.
Voici donc ma sub:

Private Sub Commande12_Click()
Dim Réponse As Integer, retval
Réponse = MsgBox("cette date: " & Date & " est-elle bien celle
d'aujourd'hui", vbQuestion + vbYesNo, "Confirmation de date")
If Réponse = vbYes Then
DoCmd.Quit
Else
Réponse = MsgBox("Veuillez donc changer cette date" & vbLf &
_
"en apportant les changements dans la" & vbLf & _
"fenêtre qui va s'ouvrir", vbExclamation, "Changement de
date")
retval = Shell("rundll32.exe shell32.dll,Control_RunDLL
timedate.cpl,,0", vbNormalFocus)
End If
DoCmd.Quit 'le programme est quitté avant que le
changement de date n'ait été effectué
End Sub

Merci d'avance pour vos réponses :-)
@+

Guy FALESSE




--
Voilou !
Cordialement,

Ze Titi






Guy FALESSE
Le #6170741
ReSalut ze titi,
J'ai mis la fonction en public et maintenant, j'ai:

Un appel de fonction dans la partie gauche doit renvoyer variant ou object.
??
J'ai essayé ça:
délai = ShellWait("rundll32.exe shell32.dll,Control_RunDLL timedate.cpl,,0",
vbNormalFocus)
Maintenant, j'ai:
Erreur de compilation:
Nbre d'argument incorect ou affectation de propriété incorrect.
délai étant déclaré comme variant.
Voilà, merci en tout cas d'avoir essayé :-)
@+

Guy FALESSE

"Guy FALESSE" uKn8R%
Salut ZeTiti,
Merci de ta réponse et pour l'info,

Mais, j'ai fait ça
ShellWait("rundll32.exe shell32.dll,Control_RunDLL timedate.cpl,,0",
vbNormalFocus) = 1
et j'ai comme réponse sub ou fonction non définie, alors que j'ai bien
créé un nouveau module, à moins qu'il ne faille mettre cette fonction là
où se trouve mon formulaire, je vérifie.
@+
Guy FALESSE

"ze Titi" news:
Bonjour Guy FALESSE

C'est certainement de ça que tu veux parler:

http://officesystem.access.free.fr/apishellwait.htm


Dans ton message
Bonjour à tous,
J'ai ajouté Doevents, mais ça ne fonctionne pas, le programme se ferme
avant que la fonction n'ai été réalisée.
@+

Guy FALESSE


"Guy FALESSE"
Bonjour à tous,

Je sais que cela existe, mais je ne sais plus comment.
Voici donc ma sub:

Private Sub Commande12_Click()
Dim Réponse As Integer, retval
Réponse = MsgBox("cette date: " & Date & " est-elle bien celle
d'aujourd'hui", vbQuestion + vbYesNo, "Confirmation de date")
If Réponse = vbYes Then
DoCmd.Quit
Else
Réponse = MsgBox("Veuillez donc changer cette date" & vbLf &
_
"en apportant les changements dans la" & vbLf & _
"fenêtre qui va s'ouvrir", vbExclamation, "Changement de
date")
retval = Shell("rundll32.exe shell32.dll,Control_RunDLL
timedate.cpl,,0", vbNormalFocus)
End If
DoCmd.Quit 'le programme est quitté avant que le
changement de date n'ait été effectué
End Sub

Merci d'avance pour vos réponses :-)
@+

Guy FALESSE




--
Voilou !
Cordialement,

Ze Titi










ze Titi
Le #6170721
Bonjour Guy FALESSE

Essaie plutôt:

Dim delai as Boolean
delai=ShellWait("rundll32.exe shell32.dll,Control_RunDLL
timedate.cpl,,0")
If not delai then msgbox "Erreur d'éxécution !"

En effet, cette fonction ne prend qu'un argument ! De plus, elle
renvoit un booléen, par conséquent, ta variable délai doit être
déclarée comme tel
Ce booléen indique si l'éxécution s'est lancée correctement ou non,
d'où le test après le lancement de ShellWait

--
Voilou !
Bon courage !
Cordialement,
ze Titi
Guy FALESSE
Le #6170621
Salut ze Titi,
Impeccable, ça fonctionne à merveille.
De plus, j'ai encore mieux appris comment marche une fonction comme
celle-là, je suis plutôt nul là-dedans :-)
Encore merci et bonne fin de journée:-)
@+

Guy FALESSE

"ze Titi"
Bonjour Guy FALESSE

Essaie plutôt:

Dim delai as Boolean
delai=ShellWait("rundll32.exe shell32.dll,Control_RunDLL timedate.cpl,,0")
If not delai then msgbox "Erreur d'éxécution !"

En effet, cette fonction ne prend qu'un argument ! De plus, elle renvoit
un booléen, par conséquent, ta variable délai doit être déclarée comme tel
Ce booléen indique si l'éxécution s'est lancée correctement ou non, d'où
le test après le lancement de ShellWait

--
Voilou !
Bon courage !
Cordialement,
ze Titi




ze Titi
Le #6170601
De rien, merci du retour :-))

Bonne continuation

Dans ton message
Salut ze Titi,
Impeccable, ça fonctionne à merveille.
De plus, j'ai encore mieux appris comment marche une fonction comme celle-là,
je suis plutôt nul là-dedans :-)
Encore merci et bonne fin de journée:-)
@+

Guy FALESSE

"ze Titi"
Bonjour Guy FALESSE

Essaie plutôt:

Dim delai as Boolean
delai=ShellWait("rundll32.exe shell32.dll,Control_RunDLL timedate.cpl,,0")
If not delai then msgbox "Erreur d'éxécution !"

En effet, cette fonction ne prend qu'un argument ! De plus, elle renvoit un
booléen, par conséquent, ta variable délai doit être déclarée comme tel
Ce booléen indique si l'éxécution s'est lancée correctement ou non, d'où le
test après le lancement de ShellWait

-- Voilou !
Bon courage !
Cordialement,
ze Titi





--

Cordialement,

Ze Titi


Guy FALESSE
Le #6170551
Salut ze Titi,

Merciiiiii :-)

@+

Guy FALESSE

ze Titi"
De rien, merci du retour :-))

Bonne continuation

Dans ton message
Salut ze Titi,
Impeccable, ça fonctionne à merveille.
De plus, j'ai encore mieux appris comment marche une fonction comme
celle-là, je suis plutôt nul là-dedans :-)
Encore merci et bonne fin de journée:-)
@+

Guy FALESSE

"ze Titi" news:
Bonjour Guy FALESSE

Essaie plutôt:

Dim delai as Boolean
delai=ShellWait("rundll32.exe shell32.dll,Control_RunDLL
timedate.cpl,,0")
If not delai then msgbox "Erreur d'éxécution !"

En effet, cette fonction ne prend qu'un argument ! De plus, elle renvoit
un booléen, par conséquent, ta variable délai doit être déclarée comme
tel
Ce booléen indique si l'éxécution s'est lancée correctement ou non, d'où
le test après le lancement de ShellWait

-- Voilou !
Bon courage !
Cordialement,
ze Titi





--

Cordialement,

Ze Titi






Publicité
Poster une réponse
Anonyme