Bonjour.
Juste une idée.
En partant du principe , d'une part, qu'on peut atteindre une page
directement sans référencer l'onglet et que si on met le focus sur une
page
et que le sous-formulaire est le champs N°1 dans l'ordre des tabulations,
on
peut se positionner directement sur un nouvel enregistrement dans le
sous-formulaire et que d'autre part on peut mettre le focus sur un
contrôle
placé dans une page en référençant directement ce contrôle, on peut se
positionner sur le Newrecord du sous-formulaire par:
Me.Sform1.SetFocus 'sform1=controle sous-formulaire
DoCmd.GoToRecord , , acNewRec
ceci est le cas le plus simple.
Si on veut sélectionner un contrôle parmi d'autres il suffit de dire:
If Mavaleur = "azerty" Then
Me.Sform1.SetFocus
DoCmd.GoToRecord , , acNewRec
Else
Me.Modifiable84.SetFocus 'combobox placé sur l'onglet
End If
Ce n'est peut-être pas très clair ?
--
@+
Raymond Access MVP.
http://access.seneque.free.fr/
http://users.skynet.be/mpfa/charte.htm pour une meilleure
efficacité de tes interventions sur MPFA.
"Mrs Pomemboo" a écrit dans le message de
news:eK2%Bien le bonjour mes cher(es)....
Une tite pour vous ce matin... En Access 97 toujours... et je commence à
en avoir mare !
- un formulaire principal frmGestionDonnee
- contenant un contrôle onglet ctlOngletGestion de X pages
- chaque page contient un sous-formulaire
- chaque page contient une liste modifiable permettant de recherche
l'enregistrement X
- chacune de mes pages est nommée du même nom que le sous-formulaire
qu'elle contient, et le nom du contrôle à un "s" suivi du nom du
formulaire
Ce que je tente de faire, c'est à partir de la fonction ci-dessous,
ouvrir mon formulaire, me positionner sur la page voulue, mettre le
focus
sur
le sous-formulaire en question, jusque là... ma fonction le fait, ça
roule.Maintenant,
je voudrais soit aller sur ma liste déroulante, soit sur un nouvel
enregistrement du
sous-formulaire pour en ajouter un. J'ai essayé
GotoRecord acDataForm, "MonForm", acNew
mais il ne voit pas mon formulaire.
Là, je suis en désespoir de cause !
*****************
Public Sub AjouterDonnee(frmFormulaireAppelant As Form,
strNomFormulaireAppelle As String, _
strListeAssociee As String)
Dim frmGestionDonnees As Form
Dim ctlOnglet As Control
Dim ctlPage As Page
Dim ctlsFrm As Control
frmFormulaireAppelant.Visible = False
DoCmd.OpenForm "frmGestionDonnee", acNormal, , , , ,
OpenArgs:=frmFormulaireAppelant.FormName
Set frmGestionDonnees = Application.Forms("frmGestionDonnee")
Set ctlOnglet = frmGestionDonnees.Controls("ctlOngletGestion")
Set ctlPage = ctlOnglet.Pages(strNomFormulaireAppelle)
Set ctlsFrm = frmGestionDonnees.Controls("s" & strNomFormulaireAppelle)
ctlPage.SetFocus
ctlsFrm.SetFocus
'maintenant, j'aimerais ici me positionner, soit sur la liste modifiable
dusous-formulaire
'soit sur un nouvel un nouvel enregistrement
End Sub
************
Merci bien et bon début de journée !
Mrs Pomemboo
Bonjour.
Juste une idée.
En partant du principe , d'une part, qu'on peut atteindre une page
directement sans référencer l'onglet et que si on met le focus sur une
page
et que le sous-formulaire est le champs N°1 dans l'ordre des tabulations,
on
peut se positionner directement sur un nouvel enregistrement dans le
sous-formulaire et que d'autre part on peut mettre le focus sur un
contrôle
placé dans une page en référençant directement ce contrôle, on peut se
positionner sur le Newrecord du sous-formulaire par:
Me.Sform1.SetFocus 'sform1=controle sous-formulaire
DoCmd.GoToRecord , , acNewRec
ceci est le cas le plus simple.
Si on veut sélectionner un contrôle parmi d'autres il suffit de dire:
If Mavaleur = "azerty" Then
Me.Sform1.SetFocus
DoCmd.GoToRecord , , acNewRec
Else
Me.Modifiable84.SetFocus 'combobox placé sur l'onglet
End If
Ce n'est peut-être pas très clair ?
--
@+
Raymond Access MVP.
http://access.seneque.free.fr/
http://users.skynet.be/mpfa/charte.htm pour une meilleure
efficacité de tes interventions sur MPFA.
"Mrs Pomemboo" <mrspomemboo@hotmail.com> a écrit dans le message de
news:eK2%234gdRDHA.2084@TK2MSFTNGP11.phx.gbl...
Bien le bonjour mes cher(es)....
Une tite pour vous ce matin... En Access 97 toujours... et je commence à
en avoir mare !
- un formulaire principal frmGestionDonnee
- contenant un contrôle onglet ctlOngletGestion de X pages
- chaque page contient un sous-formulaire
- chaque page contient une liste modifiable permettant de recherche
l'enregistrement X
- chacune de mes pages est nommée du même nom que le sous-formulaire
qu'elle contient, et le nom du contrôle à un "s" suivi du nom du
formulaire
Ce que je tente de faire, c'est à partir de la fonction ci-dessous,
ouvrir mon formulaire, me positionner sur la page voulue, mettre le
focus
sur
le sous-formulaire en question, jusque là... ma fonction le fait, ça
roule.
Maintenant,
je voudrais soit aller sur ma liste déroulante, soit sur un nouvel
enregistrement du
sous-formulaire pour en ajouter un. J'ai essayé
GotoRecord acDataForm, "MonForm", acNew
mais il ne voit pas mon formulaire.
Là, je suis en désespoir de cause !
*****************
Public Sub AjouterDonnee(frmFormulaireAppelant As Form,
strNomFormulaireAppelle As String, _
strListeAssociee As String)
Dim frmGestionDonnees As Form
Dim ctlOnglet As Control
Dim ctlPage As Page
Dim ctlsFrm As Control
frmFormulaireAppelant.Visible = False
DoCmd.OpenForm "frmGestionDonnee", acNormal, , , , ,
OpenArgs:=frmFormulaireAppelant.FormName
Set frmGestionDonnees = Application.Forms("frmGestionDonnee")
Set ctlOnglet = frmGestionDonnees.Controls("ctlOngletGestion")
Set ctlPage = ctlOnglet.Pages(strNomFormulaireAppelle)
Set ctlsFrm = frmGestionDonnees.Controls("s" & strNomFormulaireAppelle)
ctlPage.SetFocus
ctlsFrm.SetFocus
'maintenant, j'aimerais ici me positionner, soit sur la liste modifiable
du
sous-formulaire
'soit sur un nouvel un nouvel enregistrement
End Sub
************
Merci bien et bon début de journée !
Mrs Pomemboo
Bonjour.
Juste une idée.
En partant du principe , d'une part, qu'on peut atteindre une page
directement sans référencer l'onglet et que si on met le focus sur une
page
et que le sous-formulaire est le champs N°1 dans l'ordre des tabulations,
on
peut se positionner directement sur un nouvel enregistrement dans le
sous-formulaire et que d'autre part on peut mettre le focus sur un
contrôle
placé dans une page en référençant directement ce contrôle, on peut se
positionner sur le Newrecord du sous-formulaire par:
Me.Sform1.SetFocus 'sform1=controle sous-formulaire
DoCmd.GoToRecord , , acNewRec
ceci est le cas le plus simple.
Si on veut sélectionner un contrôle parmi d'autres il suffit de dire:
If Mavaleur = "azerty" Then
Me.Sform1.SetFocus
DoCmd.GoToRecord , , acNewRec
Else
Me.Modifiable84.SetFocus 'combobox placé sur l'onglet
End If
Ce n'est peut-être pas très clair ?
--
@+
Raymond Access MVP.
http://access.seneque.free.fr/
http://users.skynet.be/mpfa/charte.htm pour une meilleure
efficacité de tes interventions sur MPFA.
"Mrs Pomemboo" a écrit dans le message de
news:eK2%Bien le bonjour mes cher(es)....
Une tite pour vous ce matin... En Access 97 toujours... et je commence à
en avoir mare !
- un formulaire principal frmGestionDonnee
- contenant un contrôle onglet ctlOngletGestion de X pages
- chaque page contient un sous-formulaire
- chaque page contient une liste modifiable permettant de recherche
l'enregistrement X
- chacune de mes pages est nommée du même nom que le sous-formulaire
qu'elle contient, et le nom du contrôle à un "s" suivi du nom du
formulaire
Ce que je tente de faire, c'est à partir de la fonction ci-dessous,
ouvrir mon formulaire, me positionner sur la page voulue, mettre le
focus
sur
le sous-formulaire en question, jusque là... ma fonction le fait, ça
roule.Maintenant,
je voudrais soit aller sur ma liste déroulante, soit sur un nouvel
enregistrement du
sous-formulaire pour en ajouter un. J'ai essayé
GotoRecord acDataForm, "MonForm", acNew
mais il ne voit pas mon formulaire.
Là, je suis en désespoir de cause !
*****************
Public Sub AjouterDonnee(frmFormulaireAppelant As Form,
strNomFormulaireAppelle As String, _
strListeAssociee As String)
Dim frmGestionDonnees As Form
Dim ctlOnglet As Control
Dim ctlPage As Page
Dim ctlsFrm As Control
frmFormulaireAppelant.Visible = False
DoCmd.OpenForm "frmGestionDonnee", acNormal, , , , ,
OpenArgs:=frmFormulaireAppelant.FormName
Set frmGestionDonnees = Application.Forms("frmGestionDonnee")
Set ctlOnglet = frmGestionDonnees.Controls("ctlOngletGestion")
Set ctlPage = ctlOnglet.Pages(strNomFormulaireAppelle)
Set ctlsFrm = frmGestionDonnees.Controls("s" & strNomFormulaireAppelle)
ctlPage.SetFocus
ctlsFrm.SetFocus
'maintenant, j'aimerais ici me positionner, soit sur la liste modifiable
dusous-formulaire
'soit sur un nouvel un nouvel enregistrement
End Sub
************
Merci bien et bon début de journée !
Mrs Pomemboo
Oui c'est très clair pour le référence du contrôle Onglet et les contrôles
qu'ils contiennent. Tout fonctionne bien.
Mais comment maintenant contrôler le nouvel enregistrement ajouté. Sur
quel
événement je mets mon code pour référencer le no du record ajouté pour
usage
ultérieur. J'ai essayé surSortie du contrôle sous-formulaire(non),
AfterInsert(appelé un peu trop tard) dans mon sous-formulaire, mais je ne
réussis pas à retrouver mon no d'enregistrement ajouté qu'en utilisant la
méthode change d'un contrôle situé dans mon sous-formulaire, pas très
efficace ! Quel événement est le plus approprié dans mon cas. Je veux
pouvoir sur click d'un bouton sauvegarder de mon formulaire principal,
prendre la valeur du controle X de mon
Merci encore !
Mrs PomembooBonjour.
Juste une idée.
En partant du principe , d'une part, qu'on peut atteindre une page
directement sans référencer l'onglet et que si on met le focus sur une
pageet que le sous-formulaire est le champs N°1 dans l'ordre des
tabulations,
onpeut se positionner directement sur un nouvel enregistrement dans le
sous-formulaire et que d'autre part on peut mettre le focus sur un
contrôleplacé dans une page en référençant directement ce contrôle, on peut se
positionner sur le Newrecord du sous-formulaire par:
Me.Sform1.SetFocus 'sform1=controle sous-formulaire
DoCmd.GoToRecord , , acNewRec
ceci est le cas le plus simple.
Si on veut sélectionner un contrôle parmi d'autres il suffit de dire:
If Mavaleur = "azerty" Then
Me.Sform1.SetFocus
DoCmd.GoToRecord , , acNewRec
Else
Me.Modifiable84.SetFocus 'combobox placé sur l'onglet
End If
Ce n'est peut-être pas très clair ?
--
@+
Raymond Access MVP.
http://access.seneque.free.fr/
http://users.skynet.be/mpfa/charte.htm pour une meilleure
efficacité de tes interventions sur MPFA.
"Mrs Pomemboo" a écrit dans le message de
news:eK2%Bien le bonjour mes cher(es)....
Une tite pour vous ce matin... En Access 97 toujours... et je commence
à
en avoir mare !
- un formulaire principal frmGestionDonnee
- contenant un contrôle onglet ctlOngletGestion de X pages
- chaque page contient un sous-formulaire
- chaque page contient une liste modifiable permettant de recherche
l'enregistrement X
- chacune de mes pages est nommée du même nom que le sous-formulaire
qu'elle contient, et le nom du contrôle à un "s" suivi du nom du
formulaire
Ce que je tente de faire, c'est à partir de la fonction ci-dessous,
ouvrir mon formulaire, me positionner sur la page voulue, mettre le
focussur
le sous-formulaire en question, jusque là... ma fonction le fait, ça
roule.Maintenant,
je voudrais soit aller sur ma liste déroulante, soit sur un nouvel
enregistrement du
sous-formulaire pour en ajouter un. J'ai essayé
GotoRecord acDataForm, "MonForm", acNew
mais il ne voit pas mon formulaire.
Là, je suis en désespoir de cause !
*****************
Public Sub AjouterDonnee(frmFormulaireAppelant As Form,
strNomFormulaireAppelle As String, _
strListeAssociee As String)
Dim frmGestionDonnees As Form
Dim ctlOnglet As Control
Dim ctlPage As Page
Dim ctlsFrm As Control
frmFormulaireAppelant.Visible = False
DoCmd.OpenForm "frmGestionDonnee", acNormal, , , , ,
OpenArgs:=frmFormulaireAppelant.FormName
Set frmGestionDonnees = Application.Forms("frmGestionDonnee")
Set ctlOnglet = frmGestionDonnees.Controls("ctlOngletGestion")
Set ctlPage = ctlOnglet.Pages(strNomFormulaireAppelle)
Set ctlsFrm = frmGestionDonnees.Controls("s" &
strNomFormulaireAppelle)
ctlPage.SetFocus
ctlsFrm.SetFocus
'maintenant, j'aimerais ici me positionner, soit sur la liste
modifiable
dusous-formulaire
'soit sur un nouvel un nouvel enregistrement
End Sub
************
Merci bien et bon début de journée !
Mrs Pomemboo
Oui c'est très clair pour le référence du contrôle Onglet et les contrôles
qu'ils contiennent. Tout fonctionne bien.
Mais comment maintenant contrôler le nouvel enregistrement ajouté. Sur
quel
événement je mets mon code pour référencer le no du record ajouté pour
usage
ultérieur. J'ai essayé surSortie du contrôle sous-formulaire(non),
AfterInsert(appelé un peu trop tard) dans mon sous-formulaire, mais je ne
réussis pas à retrouver mon no d'enregistrement ajouté qu'en utilisant la
méthode change d'un contrôle situé dans mon sous-formulaire, pas très
efficace ! Quel événement est le plus approprié dans mon cas. Je veux
pouvoir sur click d'un bouton sauvegarder de mon formulaire principal,
prendre la valeur du controle X de mon
Merci encore !
Mrs Pomemboo
Bonjour.
Juste une idée.
En partant du principe , d'une part, qu'on peut atteindre une page
directement sans référencer l'onglet et que si on met le focus sur une
page
et que le sous-formulaire est le champs N°1 dans l'ordre des
tabulations,
on
peut se positionner directement sur un nouvel enregistrement dans le
sous-formulaire et que d'autre part on peut mettre le focus sur un
contrôle
placé dans une page en référençant directement ce contrôle, on peut se
positionner sur le Newrecord du sous-formulaire par:
Me.Sform1.SetFocus 'sform1=controle sous-formulaire
DoCmd.GoToRecord , , acNewRec
ceci est le cas le plus simple.
Si on veut sélectionner un contrôle parmi d'autres il suffit de dire:
If Mavaleur = "azerty" Then
Me.Sform1.SetFocus
DoCmd.GoToRecord , , acNewRec
Else
Me.Modifiable84.SetFocus 'combobox placé sur l'onglet
End If
Ce n'est peut-être pas très clair ?
--
@+
Raymond Access MVP.
http://access.seneque.free.fr/
http://users.skynet.be/mpfa/charte.htm pour une meilleure
efficacité de tes interventions sur MPFA.
"Mrs Pomemboo" <mrspomemboo@hotmail.com> a écrit dans le message de
news:eK2%234gdRDHA.2084@TK2MSFTNGP11.phx.gbl...
Bien le bonjour mes cher(es)....
Une tite pour vous ce matin... En Access 97 toujours... et je commence
à
en avoir mare !
- un formulaire principal frmGestionDonnee
- contenant un contrôle onglet ctlOngletGestion de X pages
- chaque page contient un sous-formulaire
- chaque page contient une liste modifiable permettant de recherche
l'enregistrement X
- chacune de mes pages est nommée du même nom que le sous-formulaire
qu'elle contient, et le nom du contrôle à un "s" suivi du nom du
formulaire
Ce que je tente de faire, c'est à partir de la fonction ci-dessous,
ouvrir mon formulaire, me positionner sur la page voulue, mettre le
focus
sur
le sous-formulaire en question, jusque là... ma fonction le fait, ça
roule.
Maintenant,
je voudrais soit aller sur ma liste déroulante, soit sur un nouvel
enregistrement du
sous-formulaire pour en ajouter un. J'ai essayé
GotoRecord acDataForm, "MonForm", acNew
mais il ne voit pas mon formulaire.
Là, je suis en désespoir de cause !
*****************
Public Sub AjouterDonnee(frmFormulaireAppelant As Form,
strNomFormulaireAppelle As String, _
strListeAssociee As String)
Dim frmGestionDonnees As Form
Dim ctlOnglet As Control
Dim ctlPage As Page
Dim ctlsFrm As Control
frmFormulaireAppelant.Visible = False
DoCmd.OpenForm "frmGestionDonnee", acNormal, , , , ,
OpenArgs:=frmFormulaireAppelant.FormName
Set frmGestionDonnees = Application.Forms("frmGestionDonnee")
Set ctlOnglet = frmGestionDonnees.Controls("ctlOngletGestion")
Set ctlPage = ctlOnglet.Pages(strNomFormulaireAppelle)
Set ctlsFrm = frmGestionDonnees.Controls("s" &
strNomFormulaireAppelle)
ctlPage.SetFocus
ctlsFrm.SetFocus
'maintenant, j'aimerais ici me positionner, soit sur la liste
modifiable
du
sous-formulaire
'soit sur un nouvel un nouvel enregistrement
End Sub
************
Merci bien et bon début de journée !
Mrs Pomemboo
Oui c'est très clair pour le référence du contrôle Onglet et les contrôles
qu'ils contiennent. Tout fonctionne bien.
Mais comment maintenant contrôler le nouvel enregistrement ajouté. Sur
quel
événement je mets mon code pour référencer le no du record ajouté pour
usage
ultérieur. J'ai essayé surSortie du contrôle sous-formulaire(non),
AfterInsert(appelé un peu trop tard) dans mon sous-formulaire, mais je ne
réussis pas à retrouver mon no d'enregistrement ajouté qu'en utilisant la
méthode change d'un contrôle situé dans mon sous-formulaire, pas très
efficace ! Quel événement est le plus approprié dans mon cas. Je veux
pouvoir sur click d'un bouton sauvegarder de mon formulaire principal,
prendre la valeur du controle X de mon
Merci encore !
Mrs PomembooBonjour.
Juste une idée.
En partant du principe , d'une part, qu'on peut atteindre une page
directement sans référencer l'onglet et que si on met le focus sur une
pageet que le sous-formulaire est le champs N°1 dans l'ordre des
tabulations,
onpeut se positionner directement sur un nouvel enregistrement dans le
sous-formulaire et que d'autre part on peut mettre le focus sur un
contrôleplacé dans une page en référençant directement ce contrôle, on peut se
positionner sur le Newrecord du sous-formulaire par:
Me.Sform1.SetFocus 'sform1=controle sous-formulaire
DoCmd.GoToRecord , , acNewRec
ceci est le cas le plus simple.
Si on veut sélectionner un contrôle parmi d'autres il suffit de dire:
If Mavaleur = "azerty" Then
Me.Sform1.SetFocus
DoCmd.GoToRecord , , acNewRec
Else
Me.Modifiable84.SetFocus 'combobox placé sur l'onglet
End If
Ce n'est peut-être pas très clair ?
--
@+
Raymond Access MVP.
http://access.seneque.free.fr/
http://users.skynet.be/mpfa/charte.htm pour une meilleure
efficacité de tes interventions sur MPFA.
"Mrs Pomemboo" a écrit dans le message de
news:eK2%Bien le bonjour mes cher(es)....
Une tite pour vous ce matin... En Access 97 toujours... et je commence
à
en avoir mare !
- un formulaire principal frmGestionDonnee
- contenant un contrôle onglet ctlOngletGestion de X pages
- chaque page contient un sous-formulaire
- chaque page contient une liste modifiable permettant de recherche
l'enregistrement X
- chacune de mes pages est nommée du même nom que le sous-formulaire
qu'elle contient, et le nom du contrôle à un "s" suivi du nom du
formulaire
Ce que je tente de faire, c'est à partir de la fonction ci-dessous,
ouvrir mon formulaire, me positionner sur la page voulue, mettre le
focussur
le sous-formulaire en question, jusque là... ma fonction le fait, ça
roule.Maintenant,
je voudrais soit aller sur ma liste déroulante, soit sur un nouvel
enregistrement du
sous-formulaire pour en ajouter un. J'ai essayé
GotoRecord acDataForm, "MonForm", acNew
mais il ne voit pas mon formulaire.
Là, je suis en désespoir de cause !
*****************
Public Sub AjouterDonnee(frmFormulaireAppelant As Form,
strNomFormulaireAppelle As String, _
strListeAssociee As String)
Dim frmGestionDonnees As Form
Dim ctlOnglet As Control
Dim ctlPage As Page
Dim ctlsFrm As Control
frmFormulaireAppelant.Visible = False
DoCmd.OpenForm "frmGestionDonnee", acNormal, , , , ,
OpenArgs:=frmFormulaireAppelant.FormName
Set frmGestionDonnees = Application.Forms("frmGestionDonnee")
Set ctlOnglet = frmGestionDonnees.Controls("ctlOngletGestion")
Set ctlPage = ctlOnglet.Pages(strNomFormulaireAppelle)
Set ctlsFrm = frmGestionDonnees.Controls("s" &
strNomFormulaireAppelle)
ctlPage.SetFocus
ctlsFrm.SetFocus
'maintenant, j'aimerais ici me positionner, soit sur la liste
modifiable
dusous-formulaire
'soit sur un nouvel un nouvel enregistrement
End Sub
************
Merci bien et bon début de journée !
Mrs Pomemboo
RE.
Le numero du record (donc numéroauto) est créé dès que le premier champ de
l'enregistrement est validé. A partir de la sortie du premier champ du
sous-formulaire, le numéro est disponible. Donc disponible sur les
événement
beforeupdate et afterupdate obligatoirement.
--
@+
Raymond Access MVP.
http://access.seneque.free.fr/
http://users.skynet.be/mpfa/charte.htm pour une meilleure
efficacité de tes interventions sur MPFA.
"Mrs Pomemboo" a écrit dans le message de
news:Oui c'est très clair pour le référence du contrôle Onglet et les
contrôles
qu'ils contiennent. Tout fonctionne bien.
Mais comment maintenant contrôler le nouvel enregistrement ajouté. Sur
quelévénement je mets mon code pour référencer le no du record ajouté pour
usageultérieur. J'ai essayé surSortie du contrôle sous-formulaire(non),
AfterInsert(appelé un peu trop tard) dans mon sous-formulaire, mais je
ne
réussis pas à retrouver mon no d'enregistrement ajouté qu'en utilisant
la
méthode change d'un contrôle situé dans mon sous-formulaire, pas très
efficace ! Quel événement est le plus approprié dans mon cas. Je veux
pouvoir sur click d'un bouton sauvegarder de mon formulaire principal,
prendre la valeur du controle X de mon
Merci encore !
Mrs PomembooBonjour.
Juste une idée.
En partant du principe , d'une part, qu'on peut atteindre une page
directement sans référencer l'onglet et que si on met le focus sur une
pageet que le sous-formulaire est le champs N°1 dans l'ordre des
tabulations,onpeut se positionner directement sur un nouvel enregistrement dans le
sous-formulaire et que d'autre part on peut mettre le focus sur un
contrôleplacé dans une page en référençant directement ce contrôle, on peut se
positionner sur le Newrecord du sous-formulaire par:
Me.Sform1.SetFocus 'sform1=controle sous-formulaire
DoCmd.GoToRecord , , acNewRec
ceci est le cas le plus simple.
Si on veut sélectionner un contrôle parmi d'autres il suffit de dire:
If Mavaleur = "azerty" Then
Me.Sform1.SetFocus
DoCmd.GoToRecord , , acNewRec
Else
Me.Modifiable84.SetFocus 'combobox placé sur l'onglet
End If
Ce n'est peut-être pas très clair ?
--
@+
Raymond Access MVP.
http://access.seneque.free.fr/
http://users.skynet.be/mpfa/charte.htm pour une meilleure
efficacité de tes interventions sur MPFA.
"Mrs Pomemboo" a écrit dans le message de
news:eK2%Bien le bonjour mes cher(es)....
Une tite pour vous ce matin... En Access 97 toujours... et je
commence
àen avoir mare !
- un formulaire principal frmGestionDonnee
- contenant un contrôle onglet ctlOngletGestion de X pages
- chaque page contient un sous-formulaire
- chaque page contient une liste modifiable permettant de recherche
l'enregistrement X
- chacune de mes pages est nommée du même nom que le sous-formulaire
qu'elle contient, et le nom du contrôle à un "s" suivi du nom du
formulaire
Ce que je tente de faire, c'est à partir de la fonction ci-dessous,
ouvrir mon formulaire, me positionner sur la page voulue, mettre le
focussur
le sous-formulaire en question, jusque là... ma fonction le fait, ça
roule.Maintenant,
je voudrais soit aller sur ma liste déroulante, soit sur un nouvel
enregistrement du
sous-formulaire pour en ajouter un. J'ai essayé
GotoRecord acDataForm, "MonForm", acNew
mais il ne voit pas mon formulaire.
Là, je suis en désespoir de cause !
*****************
Public Sub AjouterDonnee(frmFormulaireAppelant As Form,
strNomFormulaireAppelle As String, _
strListeAssociee As String)
Dim frmGestionDonnees As Form
Dim ctlOnglet As Control
Dim ctlPage As Page
Dim ctlsFrm As Control
frmFormulaireAppelant.Visible = False
DoCmd.OpenForm "frmGestionDonnee", acNormal, , , , ,
OpenArgs:=frmFormulaireAppelant.FormName
Set frmGestionDonnees = Application.Forms("frmGestionDonnee")
Set ctlOnglet = frmGestionDonnees.Controls("ctlOngletGestion")
Set ctlPage = ctlOnglet.Pages(strNomFormulaireAppelle)
Set ctlsFrm = frmGestionDonnees.Controls("s" &
strNomFormulaireAppelle)
ctlPage.SetFocus
ctlsFrm.SetFocus
'maintenant, j'aimerais ici me positionner, soit sur la liste
modifiabledusous-formulaire
'soit sur un nouvel un nouvel enregistrement
End Sub
************
Merci bien et bon début de journée !
Mrs Pomemboo
RE.
Le numero du record (donc numéroauto) est créé dès que le premier champ de
l'enregistrement est validé. A partir de la sortie du premier champ du
sous-formulaire, le numéro est disponible. Donc disponible sur les
événement
beforeupdate et afterupdate obligatoirement.
--
@+
Raymond Access MVP.
http://access.seneque.free.fr/
http://users.skynet.be/mpfa/charte.htm pour une meilleure
efficacité de tes interventions sur MPFA.
"Mrs Pomemboo" <mrspomemboo@hotmail.com> a écrit dans le message de
news:OPtcpFhRDHA.2144@TK2MSFTNGP11.phx.gbl...
Oui c'est très clair pour le référence du contrôle Onglet et les
contrôles
qu'ils contiennent. Tout fonctionne bien.
Mais comment maintenant contrôler le nouvel enregistrement ajouté. Sur
quel
événement je mets mon code pour référencer le no du record ajouté pour
usage
ultérieur. J'ai essayé surSortie du contrôle sous-formulaire(non),
AfterInsert(appelé un peu trop tard) dans mon sous-formulaire, mais je
ne
réussis pas à retrouver mon no d'enregistrement ajouté qu'en utilisant
la
méthode change d'un contrôle situé dans mon sous-formulaire, pas très
efficace ! Quel événement est le plus approprié dans mon cas. Je veux
pouvoir sur click d'un bouton sauvegarder de mon formulaire principal,
prendre la valeur du controle X de mon
Merci encore !
Mrs Pomemboo
Bonjour.
Juste une idée.
En partant du principe , d'une part, qu'on peut atteindre une page
directement sans référencer l'onglet et que si on met le focus sur une
page
et que le sous-formulaire est le champs N°1 dans l'ordre des
tabulations,
on
peut se positionner directement sur un nouvel enregistrement dans le
sous-formulaire et que d'autre part on peut mettre le focus sur un
contrôle
placé dans une page en référençant directement ce contrôle, on peut se
positionner sur le Newrecord du sous-formulaire par:
Me.Sform1.SetFocus 'sform1=controle sous-formulaire
DoCmd.GoToRecord , , acNewRec
ceci est le cas le plus simple.
Si on veut sélectionner un contrôle parmi d'autres il suffit de dire:
If Mavaleur = "azerty" Then
Me.Sform1.SetFocus
DoCmd.GoToRecord , , acNewRec
Else
Me.Modifiable84.SetFocus 'combobox placé sur l'onglet
End If
Ce n'est peut-être pas très clair ?
--
@+
Raymond Access MVP.
http://access.seneque.free.fr/
http://users.skynet.be/mpfa/charte.htm pour une meilleure
efficacité de tes interventions sur MPFA.
"Mrs Pomemboo" <mrspomemboo@hotmail.com> a écrit dans le message de
news:eK2%234gdRDHA.2084@TK2MSFTNGP11.phx.gbl...
Bien le bonjour mes cher(es)....
Une tite pour vous ce matin... En Access 97 toujours... et je
commence
à
en avoir mare !
- un formulaire principal frmGestionDonnee
- contenant un contrôle onglet ctlOngletGestion de X pages
- chaque page contient un sous-formulaire
- chaque page contient une liste modifiable permettant de recherche
l'enregistrement X
- chacune de mes pages est nommée du même nom que le sous-formulaire
qu'elle contient, et le nom du contrôle à un "s" suivi du nom du
formulaire
Ce que je tente de faire, c'est à partir de la fonction ci-dessous,
ouvrir mon formulaire, me positionner sur la page voulue, mettre le
focus
sur
le sous-formulaire en question, jusque là... ma fonction le fait, ça
roule.
Maintenant,
je voudrais soit aller sur ma liste déroulante, soit sur un nouvel
enregistrement du
sous-formulaire pour en ajouter un. J'ai essayé
GotoRecord acDataForm, "MonForm", acNew
mais il ne voit pas mon formulaire.
Là, je suis en désespoir de cause !
*****************
Public Sub AjouterDonnee(frmFormulaireAppelant As Form,
strNomFormulaireAppelle As String, _
strListeAssociee As String)
Dim frmGestionDonnees As Form
Dim ctlOnglet As Control
Dim ctlPage As Page
Dim ctlsFrm As Control
frmFormulaireAppelant.Visible = False
DoCmd.OpenForm "frmGestionDonnee", acNormal, , , , ,
OpenArgs:=frmFormulaireAppelant.FormName
Set frmGestionDonnees = Application.Forms("frmGestionDonnee")
Set ctlOnglet = frmGestionDonnees.Controls("ctlOngletGestion")
Set ctlPage = ctlOnglet.Pages(strNomFormulaireAppelle)
Set ctlsFrm = frmGestionDonnees.Controls("s" &
strNomFormulaireAppelle)
ctlPage.SetFocus
ctlsFrm.SetFocus
'maintenant, j'aimerais ici me positionner, soit sur la liste
modifiable
du
sous-formulaire
'soit sur un nouvel un nouvel enregistrement
End Sub
************
Merci bien et bon début de journée !
Mrs Pomemboo
RE.
Le numero du record (donc numéroauto) est créé dès que le premier champ de
l'enregistrement est validé. A partir de la sortie du premier champ du
sous-formulaire, le numéro est disponible. Donc disponible sur les
événement
beforeupdate et afterupdate obligatoirement.
--
@+
Raymond Access MVP.
http://access.seneque.free.fr/
http://users.skynet.be/mpfa/charte.htm pour une meilleure
efficacité de tes interventions sur MPFA.
"Mrs Pomemboo" a écrit dans le message de
news:Oui c'est très clair pour le référence du contrôle Onglet et les
contrôles
qu'ils contiennent. Tout fonctionne bien.
Mais comment maintenant contrôler le nouvel enregistrement ajouté. Sur
quelévénement je mets mon code pour référencer le no du record ajouté pour
usageultérieur. J'ai essayé surSortie du contrôle sous-formulaire(non),
AfterInsert(appelé un peu trop tard) dans mon sous-formulaire, mais je
ne
réussis pas à retrouver mon no d'enregistrement ajouté qu'en utilisant
la
méthode change d'un contrôle situé dans mon sous-formulaire, pas très
efficace ! Quel événement est le plus approprié dans mon cas. Je veux
pouvoir sur click d'un bouton sauvegarder de mon formulaire principal,
prendre la valeur du controle X de mon
Merci encore !
Mrs PomembooBonjour.
Juste une idée.
En partant du principe , d'une part, qu'on peut atteindre une page
directement sans référencer l'onglet et que si on met le focus sur une
pageet que le sous-formulaire est le champs N°1 dans l'ordre des
tabulations,onpeut se positionner directement sur un nouvel enregistrement dans le
sous-formulaire et que d'autre part on peut mettre le focus sur un
contrôleplacé dans une page en référençant directement ce contrôle, on peut se
positionner sur le Newrecord du sous-formulaire par:
Me.Sform1.SetFocus 'sform1=controle sous-formulaire
DoCmd.GoToRecord , , acNewRec
ceci est le cas le plus simple.
Si on veut sélectionner un contrôle parmi d'autres il suffit de dire:
If Mavaleur = "azerty" Then
Me.Sform1.SetFocus
DoCmd.GoToRecord , , acNewRec
Else
Me.Modifiable84.SetFocus 'combobox placé sur l'onglet
End If
Ce n'est peut-être pas très clair ?
--
@+
Raymond Access MVP.
http://access.seneque.free.fr/
http://users.skynet.be/mpfa/charte.htm pour une meilleure
efficacité de tes interventions sur MPFA.
"Mrs Pomemboo" a écrit dans le message de
news:eK2%Bien le bonjour mes cher(es)....
Une tite pour vous ce matin... En Access 97 toujours... et je
commence
àen avoir mare !
- un formulaire principal frmGestionDonnee
- contenant un contrôle onglet ctlOngletGestion de X pages
- chaque page contient un sous-formulaire
- chaque page contient une liste modifiable permettant de recherche
l'enregistrement X
- chacune de mes pages est nommée du même nom que le sous-formulaire
qu'elle contient, et le nom du contrôle à un "s" suivi du nom du
formulaire
Ce que je tente de faire, c'est à partir de la fonction ci-dessous,
ouvrir mon formulaire, me positionner sur la page voulue, mettre le
focussur
le sous-formulaire en question, jusque là... ma fonction le fait, ça
roule.Maintenant,
je voudrais soit aller sur ma liste déroulante, soit sur un nouvel
enregistrement du
sous-formulaire pour en ajouter un. J'ai essayé
GotoRecord acDataForm, "MonForm", acNew
mais il ne voit pas mon formulaire.
Là, je suis en désespoir de cause !
*****************
Public Sub AjouterDonnee(frmFormulaireAppelant As Form,
strNomFormulaireAppelle As String, _
strListeAssociee As String)
Dim frmGestionDonnees As Form
Dim ctlOnglet As Control
Dim ctlPage As Page
Dim ctlsFrm As Control
frmFormulaireAppelant.Visible = False
DoCmd.OpenForm "frmGestionDonnee", acNormal, , , , ,
OpenArgs:=frmFormulaireAppelant.FormName
Set frmGestionDonnees = Application.Forms("frmGestionDonnee")
Set ctlOnglet = frmGestionDonnees.Controls("ctlOngletGestion")
Set ctlPage = ctlOnglet.Pages(strNomFormulaireAppelle)
Set ctlsFrm = frmGestionDonnees.Controls("s" &
strNomFormulaireAppelle)
ctlPage.SetFocus
ctlsFrm.SetFocus
'maintenant, j'aimerais ici me positionner, soit sur la liste
modifiabledusous-formulaire
'soit sur un nouvel un nouvel enregistrement
End Sub
************
Merci bien et bon début de journée !
Mrs Pomemboo