Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Access > VBA Access
VBA Access Le forum pour les questions relatives au code VBA sous Access, et à son environnement de développement VBE.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 12/12/2010, 16h15   #1
Nouveau Membre du Club
 
Inscription : janvier 2009
Messages : 130
Détails du profil
Informations forums :
Inscription : janvier 2009
Messages : 130
Points : 29
Points : 29
Par défaut Associer les résultats d'une requête

Je souhaite faire apparaître les résultats dans une listebox unique depuis ce code.

Je tiens à préciser que les tables ont les mêmes structures.

Très cordialement

Code :
1
2
3
4
5
6
7
8
9
10
 
SourceTable = "[Planning_" & Employé.Value & "]"
SourceTable1 = "[Planning_" & Invité_1.Value & "]"
SourceTable2 = "[Planning_" & Invité_2.Value & "]"
 
If JH_1.Value = JH_2.Value And Jh_3.Value <> Jh_4.Value Then
 
strSql = "Select DISTINCTROW " & " Employé, Types, Jour_1, Horaires_1, Jour_2, Horaires_2, " & SourceTable & ".* FROM " & SourceTable & " WHERE ((N° <> '" & N°.Value & "' And Validation = '" & 1 & "' And Jh_1 >= Jh_3.Value And Jh_2 <= Jh_4.value)OR(N° <> '" & N°.Value & "' And Validation = '" & 1 & "' And Jh_1 <= Jh_3.Value And Jh_2 >= Jh_4.value)OR(N° <> '" & N°.Value & "' And Validation = '" & 1 & "' And Jh_1 < Jh_3.value And Jh_2 >= Jh_3.value));"
strSql1 = "Select DISTINCTROW " & " Employé, Types, Jour_1, Horaires_1, Jour_2, Horaires_2, " & SourceTable1 & ".* FROM " & SourceTable & " WHERE ((N° <> '" & N°.Value & "' And Validation = '" & 1 & "' And Jh_1 >= Jh_3.Value And Jh_2 <= Jh_4.value)OR(N° <> '" & N°.Value & "' And Validation = '" & 1 & "' And Jh_1 <= Jh_3.Value And Jh_2 >= Jh_4.value)OR(N° <> '" & N°.Value & "' And Validation = '" & 1 & "' And Jh_1 < Jh_3.value And Jh_2 >= Jh_3.value));"
strSql2 = "Select DISTINCTROW " & " Employé, Types, Jour_1, Horaires_1, Jour_2, Horaires_2, " & SourceTable2 & ".* FROM " & SourceTable & " WHERE ((N° <> '" & N°.Value & "' And Validation = '" & 1 & "' And Jh_1 >= Jh_3.Value And Jh_2 <= Jh_4.value)OR(N° <> '" & N°.Value & "' And Validation = '" & 1 & "' And Jh_1 <= Jh_3.Value And Jh_2 >= Jh_4.value)OR(N° <> '" & N°.Value & "' And Validation = '" & 1 & "' And Jh_1 < Jh_3.value And Jh_2 >= Jh_3.value));"
fisio est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/12/2010, 19h00   #2
Membre Expert
 
Homme Jacques Petiot
Indépendant développeur et formateur
Inscription : octobre 2007
Messages : 891
Détails du profil
Informations personnelles :
Nom : Homme Jacques Petiot
Âge : 51
Localisation : France

Informations professionnelles :
Activité : Indépendant développeur et formateur
Secteur : Conseil

Informations forums :
Inscription : octobre 2007
Messages : 891
Points : 1 333
Points : 1 333
Hello
il serait utile de préciser quel prroblème précis tu rencontres !!
__________________
-------------------Simplifi----------comme si tout était simple--------
Simplifi est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/12/2010, 22h47   #3
Nouveau Membre du Club
 
Inscription : janvier 2009
Messages : 130
Détails du profil
Informations forums :
Inscription : janvier 2009
Messages : 130
Points : 29
Points : 29
Simplement d'afficher les résultats de ces trois requêtes dans un unique tableau.

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
strSql = "Select DISTINCTROW " & " Employé, Types, Jour_1, Horaires_1, Jour_2, Horaires_2, " & SourceTable & ".* FROM " & SourceTable & " WHERE  ((N° <> '" & N°.Value & "' And Validation = '" & 1 & "' And Jh_1 >= Jh_3.Value And Jh_1 < Jh_4.value)or(N° <> '" & N°.Value & "' And Validation = '" & 1 & "' And Jh_2 <= Jh_2.Value And Jh_2 > Jh_1.value));"
 
Me.Enregistrement_liste_1.RowSource = strSql
Me.Enregistrement_liste_1.Requery
 
strSql = "Select DISTINCTROW " & " Employé, Types, Jour_1, Horaires_1, Jour_2, Horaires_2, " & SourceTable1 & ".* FROM " & SourceTable1 & " WHERE  ((N° <> '" & N°.Value & "' And Validation = '" & 1 & "' And Jh_1 >= Jh_3.Value And Jh_1 < Jh_4.value)or(N° <> '" & N°.Value & "' And Validation = '" & 1 & "' And Jh_2 <= Jh_2.Value And Jh_2 > Jh_1.value));"
 
Me.Enregistrement_liste_2.RowSource = strSql
Me.Enregistrement_liste_2.Requery
 
strSql = "Select DISTINCTROW " & " Employé, Types, Jour_1, Horaires_1, Jour_2, Horaires_2, " & SourceTable2 & ".* FROM " & SourceTable2 & " WHERE  ((N° <> '" & N°.Value & "' And Validation = '" & 1 & "' And Jh_1 >= Jh_3.Value And Jh_1 < Jh_4.value)or(N° <> '" & N°.Value & "' And Validation = '" & 1 & "' And Jh_2 <= Jh_2.Value And Jh_2 > Jh_1.value));"
 
Me.Enregistrement_liste_3.RowSource = strSql
Me.Enregistrement_liste_3.Requery
fisio est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/12/2010, 09h06   #4
Membre Expert
 
Homme Jacques Petiot
Indépendant développeur et formateur
Inscription : octobre 2007
Messages : 891
Détails du profil
Informations personnelles :
Nom : Homme Jacques Petiot
Âge : 51
Localisation : France

Informations professionnelles :
Activité : Indépendant développeur et formateur
Secteur : Conseil

Informations forums :
Inscription : octobre 2007
Messages : 891
Points : 1 333
Points : 1 333
Hello
soit tu veux alternativement afficher l'un de ces trois SQL dans une même liste, alors il te suffit d'utliser le rowsource d'une seule liste
soit tu veux mélanger les lignes des trois SQL dans la même requête, alors tu dois faire une UNION
__________________
-------------------Simplifi----------comme si tout était simple--------
Simplifi est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/12/2010, 21h42   #5
Nouveau Membre du Club
 
Inscription : janvier 2009
Messages : 130
Détails du profil
Informations forums :
Inscription : janvier 2009
Messages : 130
Points : 29
Points : 29
Comment faire usage de la fonction UNION pour cet exemple ?
fisio est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/12/2010, 10h09   #6
Membre confirmé
 
Jacques Lesueur
Inscription : mai 2006
Messages : 180
Détails du profil
Informations personnelles :
Nom : Jacques Lesueur

Informations forums :
Inscription : mai 2006
Messages : 180
Points : 209
Points : 209
Par défaut Usage union sur ton code

Bonjour,
Code :
1
2
3
4
5
6
7
 strSqlTout = "Select DISTINCTROW " & " Employé, Types, Jour_1, Horaires_1, Jour_2, Horaires_2, " & SourceTable & ".* FROM " & SourceTable & " WHERE  ((N° <> '" & N°.Value & "' And Validation = '" & 1 & "' And Jh_1 >= Jh_3.Value And Jh_1 < Jh_4.value)or(N° <> '" & N°.Value & "' And Validation = '" & 1 & "' And Jh_2 <= Jh_2.Value And Jh_2 > Jh_1.value)) "						
	"Union All " & _
	"Select DISTINCTROW " & " Employé, Types, Jour_1, Horaires_1, Jour_2, Horaires_2, " & SourceTable1 & ".* FROM " & SourceTable1 & " WHERE  ((N° <> '" & N°.Value & "' And Validation = '" & 1 & "' And Jh_1 >= Jh_3.Value And Jh_1 < Jh_4.value)or(N° <> '" & N°.Value & "' And Validation = '" & 1 & "' And Jh_2 <= Jh_2.Value And Jh_2 > Jh_1.value)) "
	"Union All " & _
	"Select DISTINCTROW " & " Employé, Types, Jour_1, Horaires_1, Jour_2, Horaires_2, " & SourceTable2 & ".* FROM " & SourceTable2 & " WHERE  ((N° <> '" & N°.Value & "' And Validation = '" & 1 & "' And Jh_1 >= Jh_3.Value And Jh_1 < Jh_4.value)or(N° <> '" & N°.Value & "' And Validation = '" & 1 & "' And Jh_2 <= Jh_2.Value And Jh_2 > Jh_1.value));"
Me.Enregistrement_liste_Tout.RowSource = strSqlTout
Me.Enregistrement_liste_Tout.Requery
Jack78960 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/12/2010, 10h13   #7
Membre confirmé
 
Jacques Lesueur
Inscription : mai 2006
Messages : 180
Détails du profil
Informations personnelles :
Nom : Jacques Lesueur

Informations forums :
Inscription : mai 2006
Messages : 180
Points : 209
Points : 209
Par défaut Nota bene

Bien sur les enregistrement du formulaire ne seront pas modifiable
Jack78960 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 23h18.


 
 
 
 
Partenaires

Hébergement Web