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

VB 6 et antérieur Discussion :

toutes les enregistrements dans Mshflexgrid


Sujet :

VB 6 et antérieur

  1. #1
    Membre habitué Avatar de BERRACHED SAID
    Inscrit en
    Janvier 2009
    Messages
    192
    Détails du profil
    Informations personnelles :
    Âge : 63

    Informations forums :
    Inscription : Janvier 2009
    Messages : 192
    Points : 125
    Points
    125
    Par défaut toutes les enregistrements dans Mshflexgrid
    bonjour le forum

    Au début j'avais met un Datagrid et ça fonctionné très bien seulement l'inconvénient c'est que l'impression pour ce contrôle n'est pas fameuse alors j'ai
    opté de remplacé le DataGrid par un Flexigrid en gardant les même structures du code apparemment ça fonctionne sauf qu'il m'affiche qu'un seul enregistrement le premier enregistrement de la table alors qu'il existe plusieurs enregistrements.

    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
    Dim rs1 As String
    'On Error Resume Next
    StartDate = Format(StartDate, "dd/mm/yyyy")
    If StartDate = "" Then
    MsgBox "Il vous faut une date de Début de Période"
    Exit Sub
    End If
    StopDate = Format(StopDate, "dd/mm/yyyy")
    If StopDate = "" Then
    MsgBox "Il vous faut une date de Fin de Période"
    Exit Sub
    End If
    If StartDate = Format(StartDate, "dd/mm/yyyy") < StopDate = Format(StopDate, "dd/mm/yyyy") Then
    MsgBox "la Date de début Doit étre Superieur a la Date Fin"
    Exit Sub
    End If
    With LblSigne
    .Caption = "Reglement de La Période Allant du : " & (StartDate.Text) & "  Au : " & (StopDate.Text)
    .Visible = True
    End With
    Set conn = New ADODB.Connection
    conn.Provider = "Microsoft.jet.OLEDB.3.51"
    conn.ConnectionString = App.Path & "\GRentes.mdb"
    conn.Open
    Set rsReglement = New ADODB.Recordset
    rs1 = "Select * From TReglement WHERE [DateReglement] BETWEEN #" & StartDate & "#  And  #" & StopDate & "#"
    rsReglement.Open rs1, conn, adOpenKeyset, adLockOptimistic, adCmdTex
               If Not rsReglement.BOF Then
                'rsReglement.MoveNext
    MSFlexGrid1.Row = MSFlexGrid1.Rows - 1 'Pour ce placer sur la dernière ligne
    MSFlexGrid1.Col = 0 'première colonne
    MSFlexGrid1.Text = rsReglement.Fields("Rente") 'Intitulé des colonnes
    MSFlexGrid1.Col = 1
    MSFlexGrid1.Text = rsReglement.Fields("Nom")
    MSFlexGrid1.Col = 2
    MSFlexGrid1.Text = rsReglement.Fields("Prenom")
    MSFlexGrid1.Col = 3
    MSFlexGrid1.Text = rsReglement.Fields("Echeance")
    MSFlexGrid1.Col = 4
    MSFlexGrid1.Text = rsReglement.Fields("Annee")
    MSFlexGrid1.Col = 5
    MSFlexGrid1.Text = rsReglement.Fields("Montant")
     rsReglement.MoveNext
     MSFlexGrid1.Rows = MSFlexGrid1.Rows + 1 'Pour ajouter une ligne à l grille
    Else
    MsgBox "Aucun Reglement Pour cette Période"
    End If
    Merci d'avance pour ceux qui veulent m'éclairé

  2. #2
    Expert éminent sénior


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Points : 20 038
    Points
    20 038
    Par défaut
    Revoit la structure de ton code .. il manque la boucle de parcours des enregistrements.

  3. #3
    Membre habitué Avatar de BERRACHED SAID
    Inscrit en
    Janvier 2009
    Messages
    192
    Détails du profil
    Informations personnelles :
    Âge : 63

    Informations forums :
    Inscription : Janvier 2009
    Messages : 192
    Points : 125
    Points
    125
    Par défaut
    Bonjour bbil

    oui Visiblement ça manque un Next

    Merci

  4. #4
    Membre habitué Avatar de BERRACHED SAID
    Inscrit en
    Janvier 2009
    Messages
    192
    Détails du profil
    Informations personnelles :
    Âge : 63

    Informations forums :
    Inscription : Janvier 2009
    Messages : 192
    Points : 125
    Points
    125
    Par défaut
    Salut bbil

    j'ai réussi a afficher le résultat simplement il y a ce message"MsgBox Aucun Reglement Pour cette Période" qui s'affiche alors que normalement ne devrait s'affiché que s'il y a pas d'enregistrement

    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
    Do Until rsReglement.EOF
    MSFlexGrid1.Row = MSFlexGrid1.Rows - 1 'Pour te placer sur la dernière ligne
    MSFlexGrid1.Col = 0 'première colonne
    MSFlexGrid1.Text = rsReglement.Fields("Rente") 'ecrit dans la cellule
    MSFlexGrid1.Col = 1
    MSFlexGrid1.Text = rsReglement.Fields("Nom")
    MSFlexGrid1.Col = 2
    MSFlexGrid1.Text = rsReglement.Fields("Prenom")
    MSFlexGrid1.Col = 3
    MSFlexGrid1.Text = rsReglement.Fields("Echeance")
    MSFlexGrid1.Col = 4
    MSFlexGrid1.Text = rsReglement.Fields("Annee")
    MSFlexGrid1.Col = 5
    MSFlexGrid1.Text = rsReglement.Fields("Montant")
     rsReglement.MoveNext
     MSFlexGrid1.Rows = MSFlexGrid1.Rows + 1 'Pour ajouter une ligne à l grille
     Loop
    'Else
    MsgBox "Aucun Reglement Pour cette Période"
    'End If
    Merci

  5. #5
    Expert éminent sénior


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Points : 20 038
    Points
    20 038
    Par défaut
    Citation Envoyé par BERRACHED SAID Voir le message
    .....

    j'ai réussi a afficher le résultat simplement il y a ce message"MsgBox Aucun Reglement Pour cette Période" qui s'affiche.....
    Et dans ton code tu as mis quelque chose qui conditionne l'affichage de ce message au fait qu'il y ait ou pas des enregistrement dans ta base ???

    Essai de comprendre le code que tu écris ...

  6. #6
    Membre habitué Avatar de BERRACHED SAID
    Inscrit en
    Janvier 2009
    Messages
    192
    Détails du profil
    Informations personnelles :
    Âge : 63

    Informations forums :
    Inscription : Janvier 2009
    Messages : 192
    Points : 125
    Points
    125
    Par défaut
    Salut bbil

    j'ai contourné le probléme en ajoutant cette condition et qui semble fonctionner parfaitement :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    If MSFlexGrid1.Text = "" Then
      MsgBox "Aucun Reglement Pour cette Période"
    End If
    Merci

  7. #7
    Expert éminent sénior


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Points : 20 038
    Points
    20 038
    Par défaut
    tu pourrai aussi tester le nombre d'enregistrement de ton RecordSet :

    http://vb.developpez.com/bidou/recor...ordset#LVI-A-9

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

Discussions similaires

  1. [PPT-2003] Enregistrement de toutes les images dans un dossier
    Par November-Oscar dans le forum VBA PowerPoint
    Réponses: 2
    Dernier message: 20/05/2012, 11h01
  2. [Tableaux] Recuper toutes les options dans select
    Par Tempotpo dans le forum Langage
    Réponses: 6
    Dernier message: 13/04/2006, 14h26
  3. trier les enregistrements dans un sous-formulaire
    Par moicats dans le forum Access
    Réponses: 3
    Dernier message: 30/03/2006, 11h03
  4. Réponses: 13
    Dernier message: 01/12/2005, 17h44
  5. Réponses: 2
    Dernier message: 17/06/2005, 23h03

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