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

IHM Discussion :

Affichage incomplet dans sous formulaire


Sujet :

IHM

  1. #1
    Membre régulier
    Homme Profil pro
    Technico - Administratif
    Inscrit en
    Août 2008
    Messages
    384
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Technico - Administratif
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Août 2008
    Messages : 384
    Points : 107
    Points
    107
    Par défaut Affichage incomplet dans sous formulaire
    Bonjour,

    J'ai un sous formulaire avec 4 champs, et j'appelle la source via VB tel que :
    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
    Private Sub Form_Load()
     
        Dim rst As DAO.Recordset
     
        'Sélection de la base de données
            Dim sSQL As String
            sSQL = "Select * From R_ValoCarbu"
     
        'Ouvrir
            Set rst = CurrentDb.OpenRecordset(sSQL, dbOpenForwardOnly, dbReadOnly)
     
        'traitement
            Me.zdtIDEntree = rst![IDEntree]
            Me.zdtDateEntree = rst![Entré le]
            Me.zdtQte = rst![Qte]
            Me.zdtTotal = rst![Total]
     
        'close
            rst.Close
     
    End Sub
    Le sous formulaires est bien en mode continue mais au lieu de m'afficher les 3 lignes qui devraient apparaitre cela ne m'en affiche qu'une seule ?!

    Or quand j’exécute "R_ValoCarbu" hors du sous formulaire tout apparait correctement.

    Quelqu'un aurait il une idée du pourquoi du comment ?

    Merci
    Shades

  2. #2
    Modérateur

    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    15 359
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 15 359
    Points : 23 829
    Points
    23 829
    Par défaut
    C'est un peu normal vu ce que tu as programmé.

    Pourquoi ne pas faire une formulaire lié à la table (ou requête) R_ValoCarbu ?

    Tu obtiendra le même résultat sans une seule ligne de code.

    Sinon, si tu tiens à assigner dynamiquement la source tu peux aussi écrire

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Sub Form_Load()
    'Sélection de la base de données
            Dim sSQL As String
            sSQL = "Select * From R_ValoCarbu"
    exit sub
    Et ne pas oublié de définir la source des différents champs d'affichage.

    Ça fera la même chose.

    A+

  3. #3
    Membre régulier
    Homme Profil pro
    Technico - Administratif
    Inscrit en
    Août 2008
    Messages
    384
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Technico - Administratif
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Août 2008
    Messages : 384
    Points : 107
    Points
    107
    Par défaut
    Bonjour Marot_r

    Tu veux dire si je complètes l'ensemble :
    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
    Sub Form_Load()
     
        Dim rst As DAO.Recordset
     
        'Sélection de la base de données
            Dim sSQL As String
            sSQL = "Select * From R_ValoCarbu"
     
        'Ouvrir
            Set rst = CurrentDb.OpenRecordset(sSQL, dbOpenForwardOnly, dbReadOnly)
     
        'traitement
            Me.zdtIDEntree = rst![IDEntree]
            Me.zdtDateEntree = rst![Entré le]
            Me.zdtQte = rst![Qte]
            Me.zdtTotal = rst![Total]
     
        'close
            rst.Close
     
    Exit Sub
    Pourquoi pas avec "Private" et "End Sub" ?

    Cordialement
    Sylvain

  4. #4
    Modérateur

    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    15 359
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 15 359
    Points : 23 829
    Points
    23 829
    Par défaut
    Non, il faut que tu remplaces ton code actuel par

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Sub Form_Load()
    'Sélection de la base de données
    Dim sSQL As String
    sSQL = "Select * From R_ValoCarbu"
    exit sub
    Ce que tu as fais ne peut pas fonctionner, il faut que la source de ton fiormulaire soit un recordset. Tu ne peux pas 'écrire' des lignes dans un formulaire de cette façon.

    Tu pourrais créer un formulaire totalement déconnecté mais conviendrai quand même de créer un recordset qui serait utilisé comme source d'affichage.

    Pourquoi souhaites-tu procéder ainsi alors qu'un formulaire lié sur ta source de données fera le même travail ?

    A+

Discussions similaires

  1. Affichage résultats dans sous formulaire
    Par pat17 dans le forum IHM
    Réponses: 12
    Dernier message: 24/02/2012, 11h13
  2. Affichage résultats dans sous formulaire
    Par pat17 dans le forum IHM
    Réponses: 2
    Dernier message: 28/11/2011, 12h12
  3. affichage requete dans sous formulaire
    Par pepsister dans le forum IHM
    Réponses: 14
    Dernier message: 10/02/2010, 21h03
  4. Affichage de données dans sous formulaire
    Par karibou47 dans le forum Access
    Réponses: 1
    Dernier message: 16/08/2006, 20h58
  5. affichage des enreg. dans sous-formulaire
    Par OBIWAN64 dans le forum Access
    Réponses: 5
    Dernier message: 27/04/2006, 08h10

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