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

Ouverture même formulaire, 2 fois.

4 réponses
Avatar
Richard_35
Bonjour à tous,

Est-il possible, sous Access 2003, d'ouvrir 2 fois le même formulaire
présentant 2 enregistrements (de la même table) différents ?

Merci d'avance de vos conseils,
Richard.

4 réponses

Avatar
Michel__D
Bonjour,

"Richard_35" a écrit dans le message de
news:
Bonjour à tous,

Est-il possible, sous Access 2003, d'ouvrir 2 fois le même formulaire
présentant 2 enregistrements (de la même table) différents ?

Merci d'avance de vos conseils,
Richard.



Tu as essayé avec 2 bases frontales identiques nommées différemment.
Avatar
Richard_35
Bonjour Michel_D,

Non, je n'ai pas essayé, mais cette solution ne conviendrait pas.

Dans un liste, en "double-cliquant" sur un enregistrement A, la fiche
"détail" de l'enregistrement A apparaît. En revenant sur la liste, je
souhaiterais que, si l'utilisateur "double-clique" sur un autre
enregistrement B, une autre fenêtre s'ouvre avec la fiche "détail" de cet
autre enregistrement B, mais sans remplacer la fenêtre initiale.

Est-ce possible d'ouvrir une autre instance de ce formulaire ?

Merci d'avance de tes(vos) précieux conseils,
Richard.

"Michel__D" a écrit :

Bonjour,

"Richard_35" a écrit dans le message de
news:
> Bonjour à tous,
>
> Est-il possible, sous Access 2003, d'ouvrir 2 fois le même formulaire
> présentant 2 enregistrements (de la même table) différents ?
>
> Merci d'avance de vos conseils,
> Richard.

Tu as essayé avec 2 bases frontales identiques nommées différemment.




Avatar
elxav
Bonjour Richard,

Par VBA, tu peux ouvrir autant d'instance de ton formulaire que tu le
souhaites:
Mets ceci dans un Form contenant un bouton de commande.

Option Explicit
Option Base 0
Option Compare Database

Dim MesForms() As Form_Form1

Private Sub Commande0_Click()
Dim lngF As Long

On Error Resume Next
Err.Clear
lngF = UBound(MesForms) + 1

If Err.Number <> 0 Then
ReDim Preserve MesForms(0)
Else
ReDim Preserve MesForms(lngF)
End If

'Définir l'instance du formulaire puis l'ouvrir
Set MesForms(lngF) = New Form_Form1
MesForms(lngF).Visible = True

'Fixer l'enregistrement à afficher
MesForms(lngF).RecordSource = "Ta sélection"
MesForms(lngF).Requery

End Sub

Private Sub Form_Close()
Dim lngF As Long

'Fermer les formulaires ouverts, et libérer les ressources mémoires
For lngF = LBound(MesForms) To UBound(MesForms)

On Error Resume Next 'Au cas où le Formulaire est déjà fermé

DoCmd.Close acForm, MesForms(lngF).Name, acSaveNo
Set MesForms(lngF) = Nothing

Next lngF
End Sub

Tu peux également remplacer les lignes
MesForms(lngF).RecordSource = "Ta sélection"
MesForms(lngF).Requery

par un

MesForms(lngF).TaProcedureDeSelection(Paramètre1, paramètre2...)

Où TaProcedureDeSelection est une procédure de type Public dans le
formulaire à afficher plusieurs fois.
Dans cette procédure, dans laquelle tu peux définir autant de
paramètres dont tu as besoin, tu fixes la valeur du RecordSet afin
d'afficher l'enregistrement souhaité.

Cordialement.

On 18 août, 16:49, Richard_35
wrote:
Bonjour Michel_D,

Non, je n'ai pas essayé, mais cette solution ne conviendrait pas.

Dans un liste, en "double-cliquant" sur un enregistrement A, la fiche
"détail" de l'enregistrement A apparaît. En revenant sur la liste, je
souhaiterais que, si l'utilisateur "double-clique" sur un autre
enregistrement B, une autre fenêtre s'ouvre avec la fiche "détail" de cet
autre enregistrement B, mais sans remplacer la fenêtre initiale.

Est-ce possible d'ouvrir une autre instance de ce formulaire ?

Merci d'avance de tes(vos) précieux conseils,
Richard.

"Michel__D" a écrit :



> Bonjour,

> "Richard_35" a écrit dans le me ssage de
>news:
> > Bonjour à tous,

> > Est-il possible, sous Access 2003, d'ouvrir 2 fois le même formulai re
> > présentant 2 enregistrements (de la même table) différents ?

> > Merci d'avance de vos conseils,
> > Richard.

> Tu as essayé avec 2 bases frontales identiques nommées différemme nt.- Masquer le texte des messages précédents -

- Afficher le texte des messages précédents -


Avatar
Richard_35
Bonjour Elxav,

Merci de ta réponse.
Nous testons et je te tiens au courant.

Merci encore,
Richard.

"" a écrit :

Bonjour Richard,

Par VBA, tu peux ouvrir autant d'instance de ton formulaire que tu le
souhaites:
Mets ceci dans un Form contenant un bouton de commande.

Option Explicit
Option Base 0
Option Compare Database

Dim MesForms() As Form_Form1

Private Sub Commande0_Click()
Dim lngF As Long

On Error Resume Next
Err.Clear
lngF = UBound(MesForms) + 1

If Err.Number <> 0 Then
ReDim Preserve MesForms(0)
Else
ReDim Preserve MesForms(lngF)
End If

'Définir l'instance du formulaire puis l'ouvrir
Set MesForms(lngF) = New Form_Form1
MesForms(lngF).Visible = True

'Fixer l'enregistrement à afficher
MesForms(lngF).RecordSource = "Ta sélection"
MesForms(lngF).Requery

End Sub

Private Sub Form_Close()
Dim lngF As Long

'Fermer les formulaires ouverts, et libérer les ressources mémoires
For lngF = LBound(MesForms) To UBound(MesForms)

On Error Resume Next 'Au cas où le Formulaire est déjà fermé

DoCmd.Close acForm, MesForms(lngF).Name, acSaveNo
Set MesForms(lngF) = Nothing

Next lngF
End Sub

Tu peux également remplacer les lignes
MesForms(lngF).RecordSource = "Ta sélection"
MesForms(lngF).Requery

par un

MesForms(lngF).TaProcedureDeSelection(Paramètre1, paramètre2...)

Où TaProcedureDeSelection est une procédure de type Public dans le
formulaire à afficher plusieurs fois.
Dans cette procédure, dans laquelle tu peux définir autant de
paramètres dont tu as besoin, tu fixes la valeur du RecordSet afin
d'afficher l'enregistrement souhaité.

Cordialement.

On 18 août, 16:49, Richard_35
wrote:
> Bonjour Michel_D,
>
> Non, je n'ai pas essayé, mais cette solution ne conviendrait pas.
>
> Dans un liste, en "double-cliquant" sur un enregistrement A, la fiche
> "détail" de l'enregistrement A apparaît. En revenant sur la liste, je
> souhaiterais que, si l'utilisateur "double-clique" sur un autre
> enregistrement B, une autre fenêtre s'ouvre avec la fiche "détail" de cet
> autre enregistrement B, mais sans remplacer la fenêtre initiale.
>
> Est-ce possible d'ouvrir une autre instance de ce formulaire ?
>
> Merci d'avance de tes(vos) précieux conseils,
> Richard.
>
> "Michel__D" a écrit :
>
>
>
> > Bonjour,
>
> > "Richard_35" a écrit dans le message de
> >news:
> > > Bonjour à tous,
>
> > > Est-il possible, sous Access 2003, d'ouvrir 2 fois le même formulaire
> > > présentant 2 enregistrements (de la même table) différents ?
>
> > > Merci d'avance de vos conseils,
> > > Richard.
>
> > Tu as essayé avec 2 bases frontales identiques nommées différemment.- Masquer le texte des messages précédents -
>
> - Afficher le texte des messages précédents -