Bonjour,
Comment-est ce que je peux ouvrir toute nouvelle formulaire dans une nouvelle fenêtre au lieu de l'avoir ouverte dans la fenêtre active ?
Cordialement,
Mohamed Youssef
Bonjour,
Comment-est ce que je peux ouvrir toute nouvelle formulaire dans une nouvelle fenêtre au lieu de l'avoir ouverte dans la fenêtre active ?
Cordialement,
Mohamed Youssef
Bonjour et bienvenu sur le forum.
Je pense qu'il faudrait que tu détailles ce que tu cherches à faire.
Précise notamment ce que tu entends par nouvelle fenêtre ... tu parles de la fenêtre d'Access ?
En passant, merci de préciser la version d'Access utilisée.
Je suis sur Access 2003. J'ai créé un tableau de résultats de recherche. Si tu cliques sur un résultat, tu auras un formulaire qui correspond au résultat choisi ouverte. Si tu cliques sur un autre résultat, Access ouvre un nouveau formulaire dans la même fenêtre. Bref, on n' a toujours qu'un seul formulaire ouvert. Voici la commande utilisée pour ouvrir mes formulaires:
Ce que je voudrais faire c'est d'ouvrir chaque formulaire dans une nouvelle fenêtre. Est-il possible?
Code : Sélectionner tout - Visualiser dans une fenêtre à part DoCmd.OpenForm "TOC_ProblemSummary", acNormal, , "sProblemRef='" & sProblemRef & "'"
Cela est possible en manipulant la classe correspondant au formulaire.
Je n'ai pas le temps maintenant de t'expliquer... j'essaierai de détailler plus tard.
Bonjour
Un petit tuto sur ce que vient de te dire moult1234
La multiplication du formulaire Access
Philippe
c'est très simple, ouvre le formulaire que tu veux ouvrir dans une autre page en mode création puis va dans les propriétés du formulaire (clique droit sur le carré en haut à gauche en mode création qui deviens alors noir) la tu change dans l'onglet "autre" Fenetre independante : oui
voila j'espere t'avoir aidé ^^
L'access que j'utilise est anglais. Savez-vous la propriété "Fenetre Indépendante" correspond à quelle propriété en anglais ?? J'hésite entre deux propriétés: Pop Up et Modal.
Bonjour
C'est PopUp
Philippe
oui c'est pop up , modale signifie fenêtre modale.
C'était donc bien ce que tu voulais ?
J'ai bien mis la propriété Popup (Fen Indépendante) à Oui. Pourtant, un nouveau formulaire s'ouvre toujours dans la même fenêtre active pour remplacer la formulaire précédent
Bonjour,
si tu souhaites ouvrir plusieurs fois le même formulaire il te faut créer plusieurs instances du formulaire.
Exemple : Pour l'exemple j'ai un formulaire Frm_Results qui affiche les résultats et un formulaire TOC_ProblemSummary qui affiche le détail d'un résultat.
Dans le formulaire Frm_Results, j'utilise un bouton cmdAffiche pour ouvrir le formulaire TOC_ProblemSummary.
Dans le formulaire TOC_ProblemSummary
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27 Public WithEvents OneTPSForm as Form Private AllTPSForms As New Collection Private Sub cmdAffiche_Click() On Error Resume Next 'Si aucun résultat sélectionné alors sortir If IsNull([sProblemRef]) Then Exit sub 'Si le résultat n'est pas déjà ouvert alors créer une nouvelle fenêtre If AllTPSForms([sProblemRef]) Is Nothing Then Set OneTPSForm=New Form_TOC_ProblemSummary OneTPSForm.Filter="sProblemRef='" & [sProblemRef] & "'" OneTPSForm.FilterOn=True OneTPSForm.Caption="Problem Summary : " & [sProblemRef] OneTPSForm.OnClose="[Procédure événementielle]" AllTPSForms.Add item:=OneTPSForm, Key:=[sProblemRef] OneTPSForm.Visible=True Else 'Si le résultat est déjà ouvert alors lui donner le focus AllTPSForms([sProblemRef]).SetFocus End if End sub 'Effacer de la collection AllTPSForms le formulaire qui se ferme Private Sub OneTPSForm.Close() AllTPSForms.Remove OneTPSForm![sProblemRef] Set OneTPSForm=Nothing End sub
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 'Si le formulaire Frm_Results est ouvert alors lui indiquer quelle est l'instance active Private Sub Form_Activate() if CurrentProject.AllForms("Frm_Results").IsLoaded Then Set Form_Frm_Results.OneTPSForm=Form End sub
Je vois l'idée et je crois que c'est effectivement la solution pour mon problème. Pourtant, j'étais incapable d'intégrer ce code dans le mien. Je vais essayer d'être plus explicite afin que puissiez m'aider.
J'ai un premier formulaire "Find_Problem" dans lequel j'affiche les résultats de recherche dans un List Box appelé lstResult. Je voudrais faire que double cliquer sur un résultat de recherche fait ouvrir le formulaire "TOC_ProblemSummary" correspondant.
Voici la partie VBA du formulaire Find_Problem que j'ai et que j'aimerai changer afin d'ouvrir chaque nouvelle formulaire TOC_ProblemSummary dans une nouvelle fenêtre.
Merci beaucoup pour votra aide ..
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 Private Sub lstResult_DblClick(Cancel As Integer) Dim bRet As Boolean bRet = OpenProblem() End Sub Public Function OpenProblem() As Boolean Dim sProblemRef As String If Not IsNull(lstResult.Value) Then sProblemRef = lstResult.Value DoCmd.OpenForm "TOC_ProblemSummary", acNormal, , "sProblemRef='" & sProblemRef & "'" End If End Function
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager