IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VBA Access Discussion :

Aller au dernier enregistrement sur sous formulaire depuis formulaire en mode fenêtre de dialogue


Sujet :

VBA Access

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Août 2005
    Messages
    31
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 31
    Points : 16
    Points
    16
    Par défaut Aller au dernier enregistrement sur sous formulaire depuis formulaire en mode fenêtre de dialogue
    Bonjour à tous,

    Bon malgré la mine d'informations en or que constitue ce forum... impossible de résoudre mon problème.
    Aussi je me permets de vous le soumettre.

    Tout d'abord je vous explique le contexte :
    Sous Access 2007 j'ai donc un formulaire principal nommé "Structures"
    Celui-ci contient deux sous-formulaire :
    - "Liste structures" en volet gauche qui me permet d'avoir la liste des structure et de consulter la fiche en cliquant sur un nom
    - "Consultation structure" qui affiche les information relatives à la structure sélectionnée
    Le formulaire "Consultation structure" contient notamment un bouton "Nouvelle structure"
    Le clic sur celui-ci ouvre un formulaire "Modification structure" sur une nouvel enregistrement en mode fenêtre de dialogue
    Le formulaire "Modification structure" contient notamment un bouton permettant d'enregistrer le nouvel enregistrement puis de fermer la fenêtre de dialogue "Modification structure"

    Jusqu'ici tout fonctionne.

    Ce qui ne fonctionne pas, c'est que je voudrais que lorsque le formulaire "Modification structure" se ferme :
    - le formulaire "Consultation structure" affiche le dernier enregistrement (donc celui qui vient d'être créé)
    - le focus se fasse sur la combobox "txtRecherche" du formulaire "Liste structures"

    Voici le code du formulaire "Modification structure"
    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
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    Private Sub cmdSauvegarderFermer_Click()
        Dim strAuteurCreation As String
        Dim strIDContactcourant As String
        Dim strINSEE As String
        Dim frmConsult As Form
        Dim frmListe As Form
        Dim frmModif As Form
     
        Set frmConsult = Forms("Structures").Controls("Consultation structure").Form
        Set frmListe = Forms("Structures").Controls("Liste Structures").Form
        Set frmModif = Forms("Modification structure").Form
     
        ' Si il y a eu des modifications dans le formulaire
        If Me.Dirty Then
     
            ' On créé l'ID_CONTACT
            If IsNull(Me![txtID_CONTACT].Value) Then
                strIDContactcourant = ""
            Else
                strIDContactcourant = Me![txtID_CONTACT].Value
            End If
            If IsNull(Me![txtINSEE].Value) Then
                strINSEE = ""
            Else
                strINSEE = Me![txtINSEE].Value
            End If
     
            Call AttribuerIDContact(Me, strIDContactcourant, strINSEE)
     
            ' On enregistre l'auteur et la date de création ou de mise à jour
            If IsNull(Me![AUTEUR_CREATION].Value) Then
                strAuteurCreation = ""
            Else
                strAuteurCreation = Me![AUTEUR_CREATION]
            End If
     
            Call MiseAJour(Me, strAuteurCreation)
     
            DoCmd.RunCommand acCmdSaveRecord
            frmConsult.Requery
            frmListe.Requery
            DoCmd.Close acForm, "Modification structure"
            frmConsult.GoToLastRecordConsult
        End If
     
        frmListe.FocusSurRecherche
     
    End Sub
    le code de "Consultation structure"
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Public Sub GoToLastRecordConsult()
        DoCmd.GoToRecord , , acLast
    End Sub
    et le code de "Liste structure"
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Public Sub FocusSurRecherche()
        Me.txtRecherche.SetFocus
    End Sub
    Je n'ai aucun message d'erreur mais le formulaire "Consultation structure" n'est pas sur le dernier enregistrement et le focus n'est pas sur "txtRecherche".
    Espérant avoir été clair...
    Une aide serait vraiment la bienvenue car je n'ai plus beaucoup de cheveux!

    MERCI ENORMEMENT D'AVANCE!!!

  2. #2
    Membre à l'essai
    Profil pro
    Inscrit en
    Août 2005
    Messages
    31
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 31
    Points : 16
    Points
    16
    Par défaut
    Bonjour à tous,

    Pas beaucoup d'engouement sur mon post
    De mon côté je continue à chercher mais toujours en vain.
    Ce qui est sûr, au cas où c'est que si je mets :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    DoCmd.GoToRecord acForm,"Consultation structure" , acLast
    Directement dans le code du formulaire "Modification structure" à la ligne 43, Access me renvoie l'erreur "Le formulaire "Consultation structure" n'est pas ouvert.
    D'où l'idée grâce à des poste ici dans ce forums de mettre l'action GoToRecord dans le code du formulaire concerné et d'appeler la Sub depuis Modification structure.
    Mais pas mieux...

    Sûr aucune idée?....
    Merci encore d'avance pour vos éventuelles contributions

  3. #3
    Membre du Club
    Profil pro
    Informaticien
    Inscrit en
    Septembre 2002
    Messages
    69
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Informaticien

    Informations forums :
    Inscription : Septembre 2002
    Messages : 69
    Points : 63
    Points
    63
    Par défaut
    Bonjour,

    J'imagine que le formulaire "Consultation structure" est lié à une requête source ?

    Ce que je fais en général pour ouvrir un formualire sur un enregistrmenet précis c'est:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    DoCmd.OpenForm "Consultation structure", , , "[IDStructure]='" & varIDStructure & "'"
    Ca fonctionne que le formulaire soit déjà ouvert ou non.

    Au cas où ça puisse t'aider.

Discussions similaires

  1. Lancer sous formulaire depuis formulaire
    Par rjcab dans le forum VBA Access
    Réponses: 3
    Dernier message: 25/06/2008, 16h22
  2. Aller au dernier enregistrement d'un sous-formulaire
    Par gbzmt dans le forum VBA Access
    Réponses: 6
    Dernier message: 01/03/2008, 19h01
  3. [Conception] Enregistrement de dates concaténées depuis formulaire
    Par carelha dans le forum PHP & Base de données
    Réponses: 7
    Dernier message: 01/12/2006, 15h14
  4. [SQL] Derniers enregistrement sur plusieurs tables
    Par bibom dans le forum PHP & Base de données
    Réponses: 17
    Dernier message: 28/07/2006, 23h22
  5. Aller au dernier enregistrement +1
    Par curt dans le forum Access
    Réponses: 1
    Dernier message: 22/05/2006, 18h10

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo