begin process at 2012 02 15 04:34:34
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive Visual Basic & VB.NET

 > 

Archives Visual Basic

 > 

Bases de données

 > 

recherche entre 2 dates avec ADO


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

recherche entre 2 dates avec ADO

vendredi 22 octobre 2004 à 11:52:02 | recherche entre 2 dates avec ADO

eric7

je souhaite afficher dans un datagrid les résultats d'une recherche faite entre 2 dates sur une base de données en ADO.

Les dates de début et de fin sont choisis dans des calendrier de type : DT picker

La recherche est lancée par un bouton voir.

je commence par le code type suivant et je ne sais pas comment faire.

With dtCreation
.MoveFirst
.Find "Date_d_apparition='" & dtpDatedebut.Value & "'"


Merci d'avance
vendredi 22 octobre 2004 à 12:09:47 | Re : recherche entre 2 dates avec ADO

jrivet

Membre Club
Salut,

Essaie

dtCreation.Filter = "WHERE Date_d_apparation BETWEEN " & dtpDAtedebut.value & " AND " & DtpDAtefin.value

Le seul probleme c est que tu devras fermer ton recordset avant de faire le filtre ou alors tu fais tout en requete SQL dans le source d un recordset.

@+
Julien
-----------------------------------------------------------
Essai ca sinon on trouvera autre chose
-----------------------------------------------------------
vendredi 22 octobre 2004 à 12:22:54 | Re : recherche entre 2 dates avec ADO

jack

Administrateur CodeS-SourceS
Salut eric7
Si l'excellente réponse de jrivet ne fonctionne pas, essaye d'encadrer tes dates avec des signes #date# (ou '#date#' j'ai un doute)

Vala
Jack
vendredi 22 octobre 2004 à 15:36:51 | Re : recherche entre 2 dates avec ADO

eric7

merci jrivet & jack pour votre réponse aussi rapide mais n'étant pas un spécialiste de visual, j'ai un peu de mal à insérer le code. En dessous, le code que j'ai fais, qui ne fonctionne pas.
Si vous pouviez me filer un petit coup de main. Merci d'avance.

dans le load du formulaire, j'ouvre le recordset qui reste affiché dans le datagrid.

Private Sub BtnVoirdate_Click()

With dtCreation
.Close
.Filter = "WHERE Date_d_apparition BETWEEN " & dtpDatedebut.Value & " AND " & dtpDatefin.Value
Set cn2 = New ADODB.Connection
Set dtCreation = New ADODB.Recordset
sql2 = "SELECT * FROM Creation ORDER BY Date_d_apparition"
cn2.Open = "Provider=Microsoft.jet.OLEDB.4.0;Data source=C:\défaut 2004.mdb"
dtCreation.CursorLocation = adUseClient
dtCreation.Open sql2, cn2, adOpenDynamic, adLockOptimistic, adCmdText
Call remplirdatagrid(dtCreation)
End With
End Sub
vendredi 22 octobre 2004 à 15:47:07 | Re : recherche entre 2 dates avec ADO

jrivet

Membre Club
SAlut,


Essaie ca (en supposant que cn2 et dtcreation sont declaree en dehors de ta sub sinon tu doit les declarer dedans):

Private Sub BtnVoirdate_Click()
Set cn2 = New ADODB.Connection
cn2.Open = "Provider=Microsoft.jet.OLEDB.4.0;Data source=C:\défaut 2004.mdb"
Set dtCreation = New ADODB.Recordset
dtCreation.ActiveConnection = cn2
dtCreation.Source = "SELECT * FROM Creation WHERE Date_d_apparition BETWEEN " & dtpDatedebut.Value & " AND " & dtpDatefin.Value & " ORDER BY Date_d_apparition"
dtCreation.CursorLocation = adUseClient
dtCreation.open
Call remplirdatagrid(dtCreation)
End Sub


Je sais c est peu etre pas la meilleur facon de faire mais j aime bien declarer les choses ligne par ligne...

Autre chose: je ne sais pas ce que tu fais dans remplirdatagrid mais peu etre vaudrait il mieux ouvrir le recordset dans cette sub.

Teste et dis moi ce qui se passe
@+
Julien
-----------------------------------------------------------
Essai ca sinon on trouvera autre chose
-----------------------------------------------------------
vendredi 22 octobre 2004 à 16:42:54 | Re : recherche entre 2 dates avec ADO

eric7

ça ne marche pas. Le datagrid se vide quelque soit la date choisie

voila remplir datagrid :

Public Sub remplirdatagrid(dtCreation)

frmConsultation.DataGrid1.Columns(0).DataField = dtCreation.Fields("Date_d_apparition").Name
frmConsultation.DataGrid1.Columns(1).DataField = dtCreation.Fields("Travee").Name
frmConsultation.DataGrid1.Columns(2).DataField = dtCreation.Fields("Libelle_du_defaut").Name
frmConsultation.DataGrid1.Columns(3).DataField = dtCreation.Fields("Importance").Name
frmConsultation.DataGrid1.Columns(4).DataField = dtCreation.Fields("N°_DI").Name
frmConsultation.DataGrid1.Columns(5).DataField = dtCreation.Fields("Localisation").Name
frmConsultation.DataGrid1.Columns(6).DataField = dtCreation.Fields("Systemes_elementaires").Name

Set frmConsultation.DataGrid1.DataSource = dtCreation

Set frmConsultation.Text1.DataSource = dtCreation
frmConsultation.Text1.DataField = dtCreation.Fields("N°_de_defaut").Name

Set frmConsultation.Text2.DataSource = dtCreation
frmConsultation.Text2.DataField = dtCreation.Fields("Importance").Name

Set frmConsultation.Text3.DataSource = dtCreation
frmConsultation.Text3.DataField = dtCreation.Fields("Precision_sur_le_defaut").Name

Set frmConsultation.Text4.DataSource = dtCreation
frmConsultation.Text4.DataField = dtCreation.Fields("Signification_du_libelle").Name

Set frmConsultation.Text5.DataSource = dtCreation
frmConsultation.Text5.DataField = dtCreation.Fields("Appel_astreinte").Name

frmConsultation.DataGrid1.Refresh

End Sub
vendredi 22 octobre 2004 à 17:13:34 | Re : recherche entre 2 dates avec ADO

jrivet

Membre Club
Salut,


Regarde la propriete datasource d un datagrid qui t evitera cette fonction.
@+
Julien
-----------------------------------------------------------
Essai ca sinon on trouvera autre chose
-----------------------------------------------------------


Cette discussion est classée dans : ado, type, recherche, dates


Répondre à ce message

Sujets en rapport avec ce message

Ado et recherche par query Joker [ par manu ] je n arrive pas faire une recherche avec * avec le nouveau contre adoje creer une requete ex:select * from toto where [nom] like "*"et bien le like "* ADO - Rechercher une données dans ma base en Access [ par anspauldou ] Salutje voudrai un exemple de code qui me permettrai d'effectuer une recherche dans ma base de donnée par l'ADO. La recherche devant se faire sur un c Recherche sur ADO [ par jcharles ] J'aimerai effectuer une recherche approximative sur un ADO.J'ai utilisé les % mais cela ne change rien. (voir mon code)Pour qu'il trouve un enregistre recherche entre deux dates [ par zouave87 ] je suis en train de realiser un programme de recuperation de base de donnee par excel.Mon probleme et que je n'arrive pas a faire une recherche par ex RECHERCHE PAR DATES [ par melisa21 ] Slt à tous,je veux faire une recherche par date pour rechercher des dossiers entre deux dates. ex: du 14/06/2002 au 20/09/2002 .le pb est qu'il me pr Recherche un pro de vb!! [ par Tiph ] SAlut,en fait j'ai un petit souci pour transférer des données Access sous word, le type est incompatible. La donnée est basée sur une requête SQL, et Recherche ADO [ par YabLeo ] Salut tout le monde !Voila j'aimerai faire une recherche de donnée dans un table et tester la valeure de retour... j'ai essayé ça mais sans succés :If Recherche de contantes des processeurs [ par supermotaboy ] SuperMotaBoyje recherche toutes les constantes renvoyées par la fonction getsysteminfo de kernel32 concernant dwprocessortype pour connaitre le type d formats dates/prix XML [ par nstubi ] Bonjour, Je réalise un site qui propose aux utilisateurs de formater eux-mêmes l'affichage qu'ils désirent (dates, prix). Vive l'ergonomie, ... Que pe connaitre le type d'un champ avec ADO [ par globule ] Comment connaitre le type d'un champ avec ADO (double, long, numerique, string ...)Merci


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 2,480 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales