Impression état entre deux dates

Signaler
Messages postés
6
Date d'inscription
lundi 8 juin 2009
Statut
Membre
Dernière intervention
11 mai 2016
-
Messages postés
15422
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
24 janvier 2021
-
Bonjour, j'aimerai avoir le code pour imprimer un état entre deux dates précises (filtrage de données entre deux date)

4 réponses

Messages postés
15422
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
24 janvier 2021
503
Bonjour,

Merci de garder à l'esprit que CodeS-SourceS est une communauté d'entraide. Toutes les réponses sur le forum sont assurées par des bénévoles qui donnent de leur temps libre pour aider à résoudre les problèmes.

A noter que nous ne faisons pas dans le "tout cuit". Soit tu trouves ton bonheur dans la partie sources du site, soit à l'aide de ton moteur de recherche favori. Ici, nous aidons volontiers sur une difficulté technique, précise et parfaitement isolée rencontrée dans le cours du développement.

Penser à poster le morceau de code qui pose problème, voir ici comment utiliser la coloration syntaxique. S'il y a un message d'erreur retranscrivez le dans son intégralité, en précisant à quelle ligne apparait cette erreur.

Faire attention à la catégorie, ou la sous catégorie dans laquelle poster son message, car la réponse dépend souvent du langage exact. Par exemple, la catégorie VB possède 4 sous catégories: VB 6, VBA, VB.Net et VB script.

Merci donc de reformuler ta demande en respectant ces quelques points.


Messages postés
6
Date d'inscription
lundi 8 juin 2009
Statut
Membre
Dernière intervention
11 mai 2016

Bonjour merci pour votre remarque!
je travail en VB6.
pour filtrer les données entre deux date précise voici le code que jai utilisé:

(Dim etat As String
Dim dt_deb As Date
Dim dt_fin As Date

dt_deb = Format(dtp_deb.Value, "dd/mm/yyyy")
dt_fin = Format(dtp_fin.Value, "dd/mm/yyyy")

If (opt_dat.Value = 1) Then
etat = "1111"
GoTo suite
End If

If (opt_dat.Value = 1) Then
etat = "1101"
GoTo suite
End If
If (opt_dat.Value = 0) Then
etat = "1100"
GoTo suite
End If
suite:
With adc_compt
Select Case etat
    Case "1111"
        .Refresh
        .Recordset.Filter = "dat >= '" & dt_deb & "' and dat <= '" & dt_fin & "'"
    
    Case "1101"
        .Refresh
        .Recordset.Filter = "dat >= '" & dt_deb & "' and dat <= '" & dt_fin & "'"
    Case "1100"
        .Refresh
        
End Select)


Alors je voudrais avoir le code pour imprimer des données à une periode donnée!
Merci de m'aider, je ne suis qu'un débutant!


EDIT: Ajout de la coloration syntaxique, pourtant demandée plus haut
Messages postés
15422
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
24 janvier 2021
503
Bonsoir, j'ai parlé de coloration syntaxique aussi
Messages postés
15422
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
24 janvier 2021
503
Bon le vb6 c'est vieux pour moi.....
  • ton état ne vaudra jamais 1101, puisque tu testes la même valeur de opt_date que dans le if précédent
  • les goto c'est à éviter, dans ton cas tu peux facilement les remplacer par un select case (si tu veux bien toujours tester la même variable) ou if, then esleif then ....
  • je pense qu'il faut faire le refresh, après avoir renseigner le filtre
  • Enfin le case "1100" t'afficheras le dernier filtre en date quelqu'il soit