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 :

ouvrir un formulaire en mode nouvel enregistrement


Sujet :

VBA Access

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    302
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Janvier 2010
    Messages : 302
    Par défaut ouvrir un formulaire en mode nouvel enregistrement
    Bonjour,

    J'ai un formulaire à onglet (code trouvé sur le net).
    Je voudrai que lorsque je suis sur le premier onglet, que mon formulaire appelé soit en mode nouvel enregistrement.
    Je sais le faire lorsque j'appel un formulaire par la ligne de code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    DoCmd.OpenForm ("Frm_Nouv_projet"), acNormal, , , acFormAdd
    Mais avec se formulaire a onglet je n'y arrive pas.

    Le code du formulaire à onglet:

    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
    Public Sub OngletSelect(ctrlOnglet As Control)
     
        ' ===== cette routine permet de mieux visualiser l'onglet sélectionné =====
     
        'on met tous les labels qui servent d'onglet de la même hauteur, pour voir
        'la partie basse
     
        Dim ctrl As Control
        For Each ctrl In Me.Controls
            If TypeOf ctrl Is Label Then
                If Left(ctrl.Name, 9) = "lblOnglet" Then
                    ctrl.Height = 397
                End If
            End If
        Next ctrl
     
        ' on agrandit le label sélectionné pour qu'il passe sous le sous-formulaire car celui-ci
        ' a été crée après, ce qui fait que visuellement on a une continuité
     
        ctrlOnglet.Height = 450
     
     
    End Sub
    Code de l'appel du formulaire

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Private Sub lblOnglet1_Click()
        Me.sfm_Onglet.SourceObject = "Frm_Nouv_Famille"
        DoCmd.Maximize
        Call OngletSelect(Me.lblOnglet1)
    End Sub
    Je pense que c'est dans le code qui nomme l'objet source (Cf ci-dessus) mais je ne voie pas comment.

    Merci de votre aide.

  2. #2
    Membre éclairé
    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    302
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Janvier 2010
    Messages : 302
    Par défaut
    Bon après avoir mieux cherché sur le forum j'ai trouvé la solution.
    Elle se trouvait dans un sujet mais aussi dans un tuto.
    http://www.developpez.net/forums/d10...re-mode-ajout/

    la solution:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Private Sub lblOnglet1_Click()
        Me.sfm_Onglet.SourceObject = "Frm_Nouv_Famille"
        Me.sfm_Onglet.Form.Recordset.AddNew
        DoCmd.Maximize
        Call OngletSelect(Me.lblOnglet1)
    End Sub

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 6
    Dernier message: 18/10/2012, 10h30
  2. Réponses: 3
    Dernier message: 08/06/2012, 16h00
  3. Ouvrir un formulaire en mode graphique
    Par Goldenduck4000 dans le forum Access
    Réponses: 2
    Dernier message: 15/05/2006, 14h08
  4. Réponses: 2
    Dernier message: 29/09/2005, 14h00
  5. Réponses: 3
    Dernier message: 23/02/2005, 16h51

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