begin process at 2012 05 27 01:05:23
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Visual Basic 6

 > 

Langages dérivés

 > 

VBA

 > 

VBA - Requête Multicritères - Aucun Filtrage Des Données N'Est Effectué


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

VBA - Requête Multicritères - Aucun Filtrage Des Données N'Est Effectué

samedi 30 janvier 2010 à 16:46:44 | VBA - Requête Multicritères - Aucun Filtrage Des Données N'Est Effectué

Schnee067

"Attention message déjà posté dans requête quelque part sur le forum, personne sur le post"
Désolé, mais c'est urgent donc je l'ai mis une seconde fois ici !!!

Bonjour,

Je reviens vers vous pour avoir de l'aide. Je suis bloqué.

Je m'explique.

Sous access 2007, j'ai réussi à créer plusieurs requête pour effectuer des recherches multicritères.
Voici le détail:

Recherches:

1/ Par Année En Cours
* [Données Principales Enregistrement]![JOUR DU TRAVAIL]
** Critière: Année([JOUR DU TRAVAIL]) = Année(Maintenant())

2/ Par Année Précédente
* [Données Principales Enregistrement]![JOUR DU TRAVAIL]
** Critière: Année([JOUR DU TRAVAIL]) = Année(Date())-1

3/ Par Mois En Cours
* [Données Principales Enregistrement]![JOUR DU TRAVAIL]
** Critière: Mois([JOUR DU TRAVAIL]) = Mois(Maintenant())

4/ Par Mois Précédent
* [Données Principales Enregistrement]![JOUR DU TRAVAIL]
** Critière: Mois([JOUR DU TRAVAIL]) = Mois(Date())-1

5/ Par Date Précise
* [Données Principales Enregistrement]![JOUR DU TRAVAIL]
** Critière: Entre [Choisir La Date De Début] Et [Choisir La Date De Fin]

6/ Par Heure De Début
* [Données Principales Enregistrement]![HEURE DE DEBUT]
** Critière: Comme [Choisir L'Horaire De Début - Exemple 08:00 Ou Pour Tous Choisir *] & "*"


7/ Par Heure De Fin
* [Données Principales Enregistrement]![HEURE DE FIN]
** Critière: Comme [Choisir L'Horaire De Fin - Exemple 18:00 Ou Pour Tous Choisir *] & "*"

8/ Par Employeur
* [Données Principales Enregistrement]![Nom Des Employeurs]
** Critière: [Nom Des Employeurs] & "*"

9/ Par Remarques
* [Données Principales Enregistrement]![REMARQUES]
** Critière: Comme [Choisir Un Mot Ou Une Expression - Recherche Dans Le Champs Remarques Ou Pour Tous Choisir *] & "*"

10/ Par Type De Travail
* [Données Principales Enregistrement]![TYPE DE TRAVAIL]
** Critière: Comme [Choisir Un Type De Travail Ou Pour Tous Choisir *] & "*"

11/ Par Véhicule
* [Données Principales Enregistrement]![VEHICULE UTILISE]
** Critière: Comme [Choisir Le Véhicule Utilisé - Exemple MOTO Ou PEUGEOT 309 Ou Pour Tous Choisir *] & "*"

Mon soucis est que j'aimerai mettre l'ensemble de ces critères en VBA qui me permet ensuite de les confiés à divers champs et cases à cocher.

Pour ce faire, j'ai créé un formulaire avec divers champs et cases à cocher, mais quand je confie les critères aucun tri n'est effectué. Je précise toutefois que les données apparaissent bien dans le formulaire dans la listbox prévu à cet effet, mais sans tri.

Voici pour exemple ce que j'ai tenté de réaliser mais qui ne fonctionne pas:


Private Sub Valider_Click()
Dim SQL As String
Dim SQLWhere As String

SQL = "SELECT [JOUR DU TRAVAIL], [Nom des Employeurs], [HORAIRE DEBUT], [HORAIRE FIN], [VEHICULE UTILISE], [TYPE DE TRAVAIL], [INTEGRATION CUMUL HEURE PAR SEANCE], [REMARQUES] FROM [Données Principales Enregistrement] Where [Données Principales Enregistrement]![N°] <> 0 "

If Not Me.ChkAnCours Then
SQL = SQL & "And [Données Principales Enregistrement]![JOUR DU TRAVAIL] Where (((Year([JOUR DU TRAVAIL])) = Year(Now())))"
End If

If Not Me.FTxtRemarques Then
SQL = SQL & "And [Données Principales Enregistrement]![REMARQUES] like '*" & Me.FTxtRemarques & "*' "
End If

End Sub

Les autres ne sont pas encore marqués car ceux précités ne fonctionnant déjà pas.

Le but de cette manoeuvre est de renseigner divers champs dans un formulaire et à la fin de la saisie appuyer sur le bouton valider pour filtrer les données puis appuyer sur un autre bouton pour l'exporter vers une feuille d'Etat (déjà crée) de access (ceci n'étant pas encore gagné car ça non plus je ne sais pas faire).

Serait-il possible si quelqu'un à quelques minutes de bien vouloir m'aider à traduire les critères de recherches en VBA et surtout de m'expliquer s'il peut avec les informations fournies pourquoi les données ne sont pas filtrées apprès avoir appuyé sur le bouton valider. Et si vraiment quelqu'un pourra simplement encore me donner une petite idée pour l'exportation des données dans une feuille d'Etat !!!

Merci pour tout. Je sens que je m'approche de la fin de mon petit programme, donc merci encore de donner de votre temps pour m'aider !!!!!!!

Cordialement Schnee067.



On dit que la vie est un long fleuve tranquille. Mais quand je vois le temps qu'il me faut pour créer un programme et la sueur dépensé, cette phrase devient alors incompréhensible....

samedi 30 janvier 2010 à 20:06:32 | Re : VBA - Requête Multicritères - Aucun Filtrage Des Données N'Est Effectué

Schnee067


Bon j'ai réussi à avancer un peu.

Les formules suivantes fonctionnes:
Private Sub Valider_Click()

Me.LstRésultat.RowSource = "SELECT [Données Principales Enregistrement].[JOUR DU TRAVAIL], [Données Principales Enregistrement].[Nom Des Employeurs], [Données Principales Enregistrement].[HORAIRE DEBUT], [Données Principales Enregistrement].[HORAIRE FIN], [Données Principales Enregistrement].[INTEGRATION CUMUL HEURE PAR SEANCE], [Données Principales Enregistrement].[TYPE DE TRAVAIL], [Données Principales Enregistrement].[VEHICULE UTILISE], [Données Principales Enregistrement].[REMARQUES] " & _

"FROM [Données Principales Enregistrement] " & _

"WHERE (([Données Principales Enregistrement].[VEHICULE UTILISE])=[FCmbVéhicule]) " & _

" AND (([Données Principales Enregistrement].[REMARQUES])= [FCmbRemarques]) " & _

"ORDER BY [Données Principales Enregistrement].[JOUR DU TRAVAIL], [Données Principales Enregistrement].[Nom des Employeurs], [Données Principales Enregistrement].[HORAIRE DEBUT];"

Me.LstRésultat.Requery

End Sub

Pour faire fonctionner l'ensemble j'ai du changer le champ des remarques de txtbox en cmbbox, pourquoi ???? mystère....

Toutefois lorsque je ne rentre aucune donnée dans le champ remarques il me sort rien du tout, il faut que je change de AND en OR. Mais après il me sort les champs en "ou".
Je pense qu'il manque un petit quelque chose disant que si aucune donnée n'est entrée donc il faut tout prendre. Mais quoi ??? :

" AND (([Données Principales Enregistrement].[REMARQUES])= [FCmbRemarques]) " & _


Aidez moi s'il vous plait
samedi 30 janvier 2010 à 20:45:23 | Re : VBA - Requête Multicritères - Aucun Filtrage Des Données N'Est Effectué

Schnee067


Merci quand même, j'ai trouvé.

Il fallait simplement rajouter ceci:
Au lieu de
"WHERE (([Données Principales Enregistrement].[VEHICULE UTILISE])=[FCmbVéhicule]) " & _

" AND (([Données Principales Enregistrement].[REMARQUES])= [FCmbRemarques]) " & _

Mettre
"WHERE (([Données Principales Enregistrement].[VEHICULE UTILISE])=[FCmbVéhicule]) & NZ ('') " & _
" AND (([Données Principales Enregistrement].[REMARQUES])= [FCmbRemarques]) & NZ ('') " & _

Si cela peut servir à quelqu'un......

Seul bémol!!! il prend tous les résultats même ceux ayant le champs vide. Donc, j'ai mis une valeur par défaut dans le formulaire pour qu'il y inscrive toujours quelque chose , et dans la table null interdit.
Voilà.

@+
dimanche 31 janvier 2010 à 16:59:31 | Re : VBA - Requête Multicritères - Aucun Filtrage Des Données N'Est Effectué

rt15

Membre Club Administrateur CodeS-SourceS
Bonjour,

Merci de ne pas double poster. Et il y a un thème VBA sur vbfrance qui aurait été plus approprié.

[ Déplacé sur vbfrance ]


Cette discussion est classée dans : enregistrement, données, jour, travail, principales


Répondre à ce message

Sujets en rapport avec ce message

mise à jour enregistrement base access. [ par abaazizi ] malekBonjour,J'ai developpé une gestion application en mono poste sous VB4 base de données access (Datamgr).Pour acceder aux données des tables, je n' Mettre a jour les données d'un MSHFLEXGRID [ par aldebarre ] Bonjour, J'ai un mshflexgrid qui est lié avec ADODC. Mon problème etant que kan je modifie les données du ADODC j'aimerai ré-actualiser celle ds Imprimentes [ par Morgoth666 ] Bonjour, j'ai petit problème avec un paramètre d'un état.J'ai un formulaire dans lequelle j'ai un sous formulaire, dans le sous form il y a des donnée Enregistrement Données sur un Serveur Web [ par bamphi ] bamphiQuelles sont les instructions pour enregistrer des donnéessur un fichier situé dans un serveur internet, à partir d'unprogramme VB6 ?Merci et Co Base de données, DBCombo [ par moran56 ] En utilisant l'objet DBCombo ou DBList dépendant d'une base de données, je voudrais mettre à jour d'autres objets dépendants de la base à partir de la extraction de données d'un fichier : help ! [ par scortex84 ] Bonjour, j'ai besoin de votre aide ! Je dois parcourir un fichier et en extraire les données qu'il contient pour les utiliser.exemple du fichier : 100 afficher un enregistrement d'une base de données [ par newdry ] newdry*** salut tout le mondeJe suis bloqué sur une application,je voudrai afficher un enregistrement concernant le dépalcement d'un employé selon la enregistrement d'un formulaire à un bas de données [ par Albionbzh ] C'est pas grand chose mais je n'y arrive pas ...J'ai un formulaire, j'entre des données dans des textbox ou des case à cochées et ses valeur je veux l Enregistrement et lecture de données en RANDOM [ par badak ] Sayajin PowerJe cherche à enregistrer des records (càd un nom et un temps) dans une sorte de petit jeu. Mais je pense que je m'y prend mal, car à chaq l'enregistrement le + élevé d'un recordset [ par Olive35 ] Salut Je séche sur le recordset... j'ai établi une connexion sur une base de données Access, je sélectionne une partie des données par une requête SQL


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
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,870 sec (3)

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