Bonjour à tous,
Access-2007. J'ai une procédure dans un sous formulaire qui exécute
l'ouverture d'un fichier dont le nom est stocké dans un champ. L'événement
se produit sur un clic sur le nom du fichier. Donc si je clique sur le
premier nom, il s'exécute, si je clique sur le deuxième il s'exécute et ainsi
de suite. Ça fonctionne à merveille. Maintenant j'aimerais insérer ma
procédure dans une boucle afin que les fichiers s'exécute les uns à la suite
des autres sans que je n'ai à intervenir. N'étant pas un expert en VB est-ce
qu'il y a une âme charitable qui pourrait m'aider. J'inclus ci-dessous une
partie de ma procédure que j'aimerais «boucler».
Merci à tous.
Private Sub NomFichier_Click()
Dim Réponse As Variant
fiche = Forms![F-ENFANTS]![F-ENFANTS-STIMULI].Form![NomFichier]
Réponse = OpenFileExtend("C:\videos\" & Nfiche, Maximized, OpExecute)
If Not Réponse = True Then
MsgBox Réponse
End If
End Sub
essayer ça (Oui pour ouvrir le fichier, non pour non ouvrir le fichier et Cancel pour arreté la procedure):
Private Sub Lancement_Click() Dim Réponse As Variant Dim ReponseOuvrir As Variant Dim rst As DAO.Recordset Set rst = Forms![F-ENFANTS]![F-ENFANTS-STIMULI].Form.RecordsetClone If rst.BOF And rst.EOF Then Exit Sub End If rst.MoveFirst Do Until rst.EOF fiche = rst![NomFichier] ReponseOuvrir = MsgBox("Ouvrir Fichier: " & Nfiche & " ou Cancel pour arrêté", vbYesNoCancel) If ReponseOuvrir = vbYes Then Réponse = OpenFileExtend("C:videos" & Nfiche, Maximized, OpExecute) If Not Réponse = True Then MsgBox Réponse End If ElseIf ReponseOuvrir = vbCancel Then Exit Sub ElseIf ReponseOuvrir = vbNo Then 'rien a fair End If rst.MoveNext Loop rst.Close Set rst = Nothing End Sub
Cordialement,
Valentín *************************************************************************** ***** On 29 ago, 14:18, André wrote:
Bonjour encore moi,
Avant l'exécution du fichier son nom s'affiche, c'est parfait, par cont re y-a-t-il un moyen d'annuler la procédure en cours de route? Exemple, j'exécute le premier fichier et le deuxième et j'arrête la procéd ure avant qu'il exécute les suivants. Merci de votre patience André
"André" a écrit :
> Valentin, > Absolument génial. Ça fonctionne à merveille. Je te remerci e beaucoup du > temps que tu a consacré à mon problème. Je remercie aussi Fabi en et Blaise > pour leur dévouement. Wow...Fantastique.
> Du Québec, je vous dis encore une fois bravo et merci!
> "Valentín" a écrit :
> > André,
> > Le bouton pour executer la procedure doit être au formulaire > > princlipal. Tu peux essayer les deux options:
> > Private Sub Lancement_Click() > > Dim Réponse As Variant > > Dim rst As DAO.Recordset > > Set rst = Forms![F-ENFANTS]![F-ENFANTS-STIMULI].Form.RecordsetClone > > If rst.BOF And rst.EOF Then > > Exit Sub > > End If > > rst.MoveFirst > > Do Until rst.EOF > > fiche = rst![NomFichier] > > MsgBox "Fichier: " & "C:videos" & Nfiche > > Réponse = OpenFileExtend("C:videos" & Nfiche, Maximized , > > OpExecute) > > If Not Réponse = True Then > > MsgBox Réponse > > End If > > rst.MoveNext > > Loop > > rst.Close > > Set rst = Nothing > > End Sub- Ocultar texto de la cita -
- Mostrar texto de la cita -
André,
essayer ça (Oui pour ouvrir le fichier, non pour non ouvrir le fichier
et Cancel pour arreté la procedure):
Private Sub Lancement_Click()
Dim Réponse As Variant
Dim ReponseOuvrir As Variant
Dim rst As DAO.Recordset
Set rst = Forms![F-ENFANTS]![F-ENFANTS-STIMULI].Form.RecordsetClone
If rst.BOF And rst.EOF Then
Exit Sub
End If
rst.MoveFirst
Do Until rst.EOF
fiche = rst![NomFichier]
ReponseOuvrir = MsgBox("Ouvrir Fichier: " & Nfiche & " ou Cancel
pour arrêté", vbYesNoCancel)
If ReponseOuvrir = vbYes Then
Réponse = OpenFileExtend("C:videos" & Nfiche, Maximized,
OpExecute)
If Not Réponse = True Then
MsgBox Réponse
End If
ElseIf ReponseOuvrir = vbCancel Then
Exit Sub
ElseIf ReponseOuvrir = vbNo Then
'rien a fair
End If
rst.MoveNext
Loop
rst.Close
Set rst = Nothing
End Sub
Cordialement,
Valentín
*************************************************************************** *****
On 29 ago, 14:18, André <A...@discussions.microsoft.com> wrote:
Bonjour encore moi,
Avant l'exécution du fichier son nom s'affiche, c'est parfait, par cont re
y-a-t-il un moyen d'annuler la procédure en cours de route? Exemple,
j'exécute le premier fichier et le deuxième et j'arrête la procéd ure avant
qu'il exécute les suivants.
Merci de votre patience
André
"André" a écrit :
> Valentin,
> Absolument génial. Ça fonctionne à merveille. Je te remerci e beaucoup du
> temps que tu a consacré à mon problème. Je remercie aussi Fabi en et Blaise
> pour leur dévouement. Wow...Fantastique.
> Du Québec, je vous dis encore une fois bravo et merci!
> "Valentín" a écrit :
> > André,
> > Le bouton pour executer la procedure doit être au formulaire
> > princlipal. Tu peux essayer les deux options:
> > Private Sub Lancement_Click()
> > Dim Réponse As Variant
> > Dim rst As DAO.Recordset
> > Set rst = Forms![F-ENFANTS]![F-ENFANTS-STIMULI].Form.RecordsetClone
> > If rst.BOF And rst.EOF Then
> > Exit Sub
> > End If
> > rst.MoveFirst
> > Do Until rst.EOF
> > fiche = rst![NomFichier]
> > MsgBox "Fichier: " & "C:videos" & Nfiche
> > Réponse = OpenFileExtend("C:videos" & Nfiche, Maximized ,
> > OpExecute)
> > If Not Réponse = True Then
> > MsgBox Réponse
> > End If
> > rst.MoveNext
> > Loop
> > rst.Close
> > Set rst = Nothing
> > End Sub- Ocultar texto de la cita -
essayer ça (Oui pour ouvrir le fichier, non pour non ouvrir le fichier et Cancel pour arreté la procedure):
Private Sub Lancement_Click() Dim Réponse As Variant Dim ReponseOuvrir As Variant Dim rst As DAO.Recordset Set rst = Forms![F-ENFANTS]![F-ENFANTS-STIMULI].Form.RecordsetClone If rst.BOF And rst.EOF Then Exit Sub End If rst.MoveFirst Do Until rst.EOF fiche = rst![NomFichier] ReponseOuvrir = MsgBox("Ouvrir Fichier: " & Nfiche & " ou Cancel pour arrêté", vbYesNoCancel) If ReponseOuvrir = vbYes Then Réponse = OpenFileExtend("C:videos" & Nfiche, Maximized, OpExecute) If Not Réponse = True Then MsgBox Réponse End If ElseIf ReponseOuvrir = vbCancel Then Exit Sub ElseIf ReponseOuvrir = vbNo Then 'rien a fair End If rst.MoveNext Loop rst.Close Set rst = Nothing End Sub
Cordialement,
Valentín *************************************************************************** ***** On 29 ago, 14:18, André wrote:
Bonjour encore moi,
Avant l'exécution du fichier son nom s'affiche, c'est parfait, par cont re y-a-t-il un moyen d'annuler la procédure en cours de route? Exemple, j'exécute le premier fichier et le deuxième et j'arrête la procéd ure avant qu'il exécute les suivants. Merci de votre patience André
"André" a écrit :
> Valentin, > Absolument génial. Ça fonctionne à merveille. Je te remerci e beaucoup du > temps que tu a consacré à mon problème. Je remercie aussi Fabi en et Blaise > pour leur dévouement. Wow...Fantastique.
> Du Québec, je vous dis encore une fois bravo et merci!
> "Valentín" a écrit :
> > André,
> > Le bouton pour executer la procedure doit être au formulaire > > princlipal. Tu peux essayer les deux options:
> > Private Sub Lancement_Click() > > Dim Réponse As Variant > > Dim rst As DAO.Recordset > > Set rst = Forms![F-ENFANTS]![F-ENFANTS-STIMULI].Form.RecordsetClone > > If rst.BOF And rst.EOF Then > > Exit Sub > > End If > > rst.MoveFirst > > Do Until rst.EOF > > fiche = rst![NomFichier] > > MsgBox "Fichier: " & "C:videos" & Nfiche > > Réponse = OpenFileExtend("C:videos" & Nfiche, Maximized , > > OpExecute) > > If Not Réponse = True Then > > MsgBox Réponse > > End If > > rst.MoveNext > > Loop > > rst.Close > > Set rst = Nothing > > End Sub- Ocultar texto de la cita -
- Mostrar texto de la cita -
André
Absolument génial. Je te remercie beaucoup Valentin. Ça fonctionne au delà de mes espérances. André
"Valentín" a écrit :
André,
essayer ça (Oui pour ouvrir le fichier, non pour non ouvrir le fichier et Cancel pour arreté la procedure):
Private Sub Lancement_Click() Dim Réponse As Variant Dim ReponseOuvrir As Variant Dim rst As DAO.Recordset Set rst = Forms![F-ENFANTS]![F-ENFANTS-STIMULI].Form.RecordsetClone If rst.BOF And rst.EOF Then Exit Sub End If rst.MoveFirst Do Until rst.EOF fiche = rst![NomFichier] ReponseOuvrir = MsgBox("Ouvrir Fichier: " & Nfiche & " ou Cancel pour arrêté", vbYesNoCancel) If ReponseOuvrir = vbYes Then Réponse = OpenFileExtend("C:videos" & Nfiche, Maximized, OpExecute) If Not Réponse = True Then MsgBox Réponse End If ElseIf ReponseOuvrir = vbCancel Then Exit Sub ElseIf ReponseOuvrir = vbNo Then 'rien a fair End If rst.MoveNext Loop rst.Close Set rst = Nothing End Sub
Cordialement,
Valentín ******************************************************************************** On 29 ago, 14:18, André wrote: > Bonjour encore moi, > > Avant l'exécution du fichier son nom s'affiche, c'est parfait, par contre > y-a-t-il un moyen d'annuler la procédure en cours de route? Exemple, > j'exécute le premier fichier et le deuxième et j'arrête la procédure avant > qu'il exécute les suivants. > Merci de votre patience > André > > "André" a écrit : > > > > > Valentin, > > Absolument génial. Ça fonctionne à merveille. Je te remercie beaucoup du > > temps que tu a consacré à mon problème. Je remercie aussi Fabien et Blaise > > pour leur dévouement. Wow...Fantastique. > > > Du Québec, je vous dis encore une fois bravo et merci! > > > "Valentín" a écrit : > > > > André, > > > > Le bouton pour executer la procedure doit être au formulaire > > > princlipal. Tu peux essayer les deux options: > > > > Private Sub Lancement_Click() > > > Dim Réponse As Variant > > > Dim rst As DAO.Recordset > > > Set rst = Forms![F-ENFANTS]![F-ENFANTS-STIMULI].Form.RecordsetClone > > > If rst.BOF And rst.EOF Then > > > Exit Sub > > > End If > > > rst.MoveFirst > > > Do Until rst.EOF > > > fiche = rst![NomFichier] > > > MsgBox "Fichier: " & "C:videos" & Nfiche > > > Réponse = OpenFileExtend("C:videos" & Nfiche, Maximized, > > > OpExecute) > > > If Not Réponse = True Then > > > MsgBox Réponse > > > End If > > > rst.MoveNext > > > Loop > > > rst.Close > > > Set rst = Nothing > > > End Sub- Ocultar texto de la cita - > > - Mostrar texto de la cita -
Absolument génial. Je te remercie beaucoup Valentin. Ça fonctionne au delà
de mes espérances.
André
"Valentín" a écrit :
André,
essayer ça (Oui pour ouvrir le fichier, non pour non ouvrir le fichier
et Cancel pour arreté la procedure):
Private Sub Lancement_Click()
Dim Réponse As Variant
Dim ReponseOuvrir As Variant
Dim rst As DAO.Recordset
Set rst = Forms![F-ENFANTS]![F-ENFANTS-STIMULI].Form.RecordsetClone
If rst.BOF And rst.EOF Then
Exit Sub
End If
rst.MoveFirst
Do Until rst.EOF
fiche = rst![NomFichier]
ReponseOuvrir = MsgBox("Ouvrir Fichier: " & Nfiche & " ou Cancel
pour arrêté", vbYesNoCancel)
If ReponseOuvrir = vbYes Then
Réponse = OpenFileExtend("C:videos" & Nfiche, Maximized,
OpExecute)
If Not Réponse = True Then
MsgBox Réponse
End If
ElseIf ReponseOuvrir = vbCancel Then
Exit Sub
ElseIf ReponseOuvrir = vbNo Then
'rien a fair
End If
rst.MoveNext
Loop
rst.Close
Set rst = Nothing
End Sub
Cordialement,
Valentín
********************************************************************************
On 29 ago, 14:18, André <A...@discussions.microsoft.com> wrote:
> Bonjour encore moi,
>
> Avant l'exécution du fichier son nom s'affiche, c'est parfait, par contre
> y-a-t-il un moyen d'annuler la procédure en cours de route? Exemple,
> j'exécute le premier fichier et le deuxième et j'arrête la procédure avant
> qu'il exécute les suivants.
> Merci de votre patience
> André
>
> "André" a écrit :
>
>
>
> > Valentin,
> > Absolument génial. Ça fonctionne à merveille. Je te remercie beaucoup du
> > temps que tu a consacré à mon problème. Je remercie aussi Fabien et Blaise
> > pour leur dévouement. Wow...Fantastique.
>
> > Du Québec, je vous dis encore une fois bravo et merci!
>
> > "Valentín" a écrit :
>
> > > André,
>
> > > Le bouton pour executer la procedure doit être au formulaire
> > > princlipal. Tu peux essayer les deux options:
>
> > > Private Sub Lancement_Click()
> > > Dim Réponse As Variant
> > > Dim rst As DAO.Recordset
> > > Set rst = Forms![F-ENFANTS]![F-ENFANTS-STIMULI].Form.RecordsetClone
> > > If rst.BOF And rst.EOF Then
> > > Exit Sub
> > > End If
> > > rst.MoveFirst
> > > Do Until rst.EOF
> > > fiche = rst![NomFichier]
> > > MsgBox "Fichier: " & "C:videos" & Nfiche
> > > Réponse = OpenFileExtend("C:videos" & Nfiche, Maximized,
> > > OpExecute)
> > > If Not Réponse = True Then
> > > MsgBox Réponse
> > > End If
> > > rst.MoveNext
> > > Loop
> > > rst.Close
> > > Set rst = Nothing
> > > End Sub- Ocultar texto de la cita -
>
> - Mostrar texto de la cita -
Absolument génial. Je te remercie beaucoup Valentin. Ça fonctionne au delà de mes espérances. André
"Valentín" a écrit :
André,
essayer ça (Oui pour ouvrir le fichier, non pour non ouvrir le fichier et Cancel pour arreté la procedure):
Private Sub Lancement_Click() Dim Réponse As Variant Dim ReponseOuvrir As Variant Dim rst As DAO.Recordset Set rst = Forms![F-ENFANTS]![F-ENFANTS-STIMULI].Form.RecordsetClone If rst.BOF And rst.EOF Then Exit Sub End If rst.MoveFirst Do Until rst.EOF fiche = rst![NomFichier] ReponseOuvrir = MsgBox("Ouvrir Fichier: " & Nfiche & " ou Cancel pour arrêté", vbYesNoCancel) If ReponseOuvrir = vbYes Then Réponse = OpenFileExtend("C:videos" & Nfiche, Maximized, OpExecute) If Not Réponse = True Then MsgBox Réponse End If ElseIf ReponseOuvrir = vbCancel Then Exit Sub ElseIf ReponseOuvrir = vbNo Then 'rien a fair End If rst.MoveNext Loop rst.Close Set rst = Nothing End Sub
Cordialement,
Valentín ******************************************************************************** On 29 ago, 14:18, André wrote: > Bonjour encore moi, > > Avant l'exécution du fichier son nom s'affiche, c'est parfait, par contre > y-a-t-il un moyen d'annuler la procédure en cours de route? Exemple, > j'exécute le premier fichier et le deuxième et j'arrête la procédure avant > qu'il exécute les suivants. > Merci de votre patience > André > > "André" a écrit : > > > > > Valentin, > > Absolument génial. Ça fonctionne à merveille. Je te remercie beaucoup du > > temps que tu a consacré à mon problème. Je remercie aussi Fabien et Blaise > > pour leur dévouement. Wow...Fantastique. > > > Du Québec, je vous dis encore une fois bravo et merci! > > > "Valentín" a écrit : > > > > André, > > > > Le bouton pour executer la procedure doit être au formulaire > > > princlipal. Tu peux essayer les deux options: > > > > Private Sub Lancement_Click() > > > Dim Réponse As Variant > > > Dim rst As DAO.Recordset > > > Set rst = Forms![F-ENFANTS]![F-ENFANTS-STIMULI].Form.RecordsetClone > > > If rst.BOF And rst.EOF Then > > > Exit Sub > > > End If > > > rst.MoveFirst > > > Do Until rst.EOF > > > fiche = rst![NomFichier] > > > MsgBox "Fichier: " & "C:videos" & Nfiche > > > Réponse = OpenFileExtend("C:videos" & Nfiche, Maximized, > > > OpExecute) > > > If Not Réponse = True Then > > > MsgBox Réponse > > > End If > > > rst.MoveNext > > > Loop > > > rst.Close > > > Set rst = Nothing > > > End Sub- Ocultar texto de la cita - > > - Mostrar texto de la cita -