DataGrid ( VB6)

Résolu
Lenouveauapprenti Messages postés 306 Date d'inscription   Statut Membre Dernière intervention   -  
Lenouveauapprenti Messages postés 306 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Je m'adresse à vous, pour vous prier de me renseigner sur le comment faire afficher les données sur ma DataGrid à chaque fois où je sélectionne un bouton.

Je m'explique.

sur la (Form) il y'a :

1 : Deux boutons ( Option )
OptQ1
OptQt2
2 : Combox ( Affiche les mois de l'année)

3 : DataGrid

4 : Addoc

mes codes sont comme suite:

une fois le mois sélectionné, je clique sur un bouton (OptQ1) ou (OptQ2)

dans chacun de ces deux boutons, j'ai écris :

 Private Sub OptQ1_Click()

dim Q as string

Q = "Quinzaine n°1"

SQLs = "select * from TableQuinzaines where ((Dossier='" & CStr(VarDossier) & "')and (Mois='" & CStr(cmbMois) & "') and (Quinzaine='" & CStr(Q) & "'))"

If RS.State = adStateOpen Then RS.Close
RS.Open SQLs, DB, adOpenKeyset, adLockPessimistic

ADQuinzaine.RecordSource = SQLs

Set DGQuinzaine.DataSource = ADQuinzaine

DGQuinzaine.AllowArrows = False
DGQuinzaine.AllowUpdate = False

ADQuinzaine.Refresh

end sub


sur OptQ2 ( le même code )

Private Sub OptQ2_Click()

dim Q as string

Q = "Quinzaine n°2"

SQLs = "select * from TableQuinzaines where ((Dossier='" & CStr(VarDossier) & "')and (Mois='" & CStr(cmbMois) & "') and (Quinzaine='" & CStr(Q) & "'))"

If RS.State = adStateOpen Then RS.Close
RS.Open SQLs, DB, adOpenKeyset, adLockPessimistic

ADQuinzaine.RecordSource = SQLs

Set DGQuinzaine.DataSource = ADQuinzaine

DGQuinzaine.AllowArrows = False
DGQuinzaine.AllowUpdate = False

ADQuinzaine.Refresh

end sub


Ce que je cherche, est faire afficher les données de la Quinzaine n° 1 ( optQ1) s'elles existent, sinon, la datagrid doit être vide
la même chose, lors d'un click sur le bouton OpQ2,

Merci pour votre aide.

1 réponse

  1. f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention   1 717
     
    Bonjour,

    pour votre RAZ datagrid, regarder ici:
    https://codes-sources.commentcamarche.net/forum/affich-1165867-comment-vider-une-datagrid-lorse-du-demarage

    code plus logique
    Private Sub OptQ1_Click()
        Call Recherche(1)
    End Sub
    Private Sub OptQ2_Click()
        Call Recherche(2)
    End Sub
    
    Sub Recherche(Num)
        SQLs = "select * from TableQuinzaines where ((Dossier='" & CStr(VarDossier) & "')and (Mois='" & CStr(cmbMois) & "') and (Quinzaine='" & CStr(Num) & "'))"
    
        If RS.State = adStateOpen Then RS.Close
        RS.Open SQLs, DB, adOpenKeyset, adLockPessimistic
    
        ADQuinzaine.RecordSource = SQLs
    
        Set DGQuinzaine.DataSource = ADQuinzaine
    
        DGQuinzaine.AllowArrows = False
        DGQuinzaine.AllowUpdate = False
    
        ADQuinzaine.Refresh
    End Sub
    0
    1. Lenouveauapprenti Messages postés 306 Date d'inscription   Statut Membre Dernière intervention   2
       
      Bonjour

      Je vous remercie pour votre aide.

      Je n'ai pas encore essayer votre code, je le ferai incessement. Seulement je suis bloquè à ce moment sur la façon d'imprimer une sèrie de bulletins de paie avec un seul click.

      Imprimer bulletin par bulletin en selectionnant le nom, je l'ai réussi, mais imprimer plusieurs en un seul clik me donne du fil à retorde
      0
    2. f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention   1 717
       
      Bonjour,

      Dans le code que j'ai modifie, il n'y a pas la modification demandée ..........
      0
    3. Lenouveauapprenti Messages postés 306 Date d'inscription   Statut Membre Dernière intervention   2
       
      Bonjour

      J'ai essayer votre code, et a bien marché.
      Merci une autre fois
      0