Bonjour, Je suis en trin de crée une base de donnée sous acces ma table et crée ma requette aussi et mais formulaire mais je souhaite crée une requette multicritére voila se que j'ai taper mais sa ne marche pas.
Option Compare Database
End Sub Option Compare Database Const Sourcezoneliste1 As String = "Patient" 'Table source de ZoneListe1 Const Champzone1 As String = "Patient" 'Champ table données correspondant à Zoneliste1 Const Sourcezoneliste2 As String = "Patient" 'Table source de ZoneListe2 Const Champzone2 As String = "Age" 'Champ table données correspondant à Zoneliste2 'Préciser obligatoirement 4 champs de tri, même plusieurs fois le même Const Champtri1 As String = "NomFamille" 'Champ de tri ORDER BY n°1 Const Champtri2 As String = "EtabAdapt2" 'Champ de tri ORDER BY n°2
Private Sub Form_Open(Cancel As Integer) 'Initialisation des listes de critères With ZoneListe1 'avec les constantes .RowSourceType = "Table/Query" .RowSource = Sourcezoneliste1 .ColumnHeads = False End With
With ZoneListe2 .RowSourceType = "Table/Query" .RowSource = Sourcezoneliste2 .ColumnHeads = False End With
End Sub
Private Sub LancerRequete_Click() 'Bt Requête Patient Requête End Sub
Private Sub RequeteMulticriteres() Dim strSQL As String
'Requête SQL si aucun critère sélectionné strSQL = "SELECT * FROM " & Patient & " WHERE ([" & Champzone & "] Like '*' "
'Recueillir les critères renseignés If Me.ZoneListe1 <> "" Then strSQL1 = " And [" & Champzone1 & "] Like '" & Me.ZoneListe1 & "'" Else strSQL1 = "" End If
If Me.ZoneListe2 <> "" Then strSQL2 = " And [" & Champzone2 & "] Like '" & Me.ZoneListe2 & "'" Else strSQL2 = "" End If
'Création de la requête SQL finale strSQL = strSQL & strSQL1 & strSQL2 & strSQL3 'Tri final des enregistrements strSQL = strSQL & " ) ORDER BY " & Champtri1 & ", " & Champtri2
'Affichage de la requête SQL finale 'MsgBox strSQL
'Remplir le sous formulaire avec la requête Me.[LignesRequete].Form.RecordSource = strSQL End Sub
Marsh Posté le 11-05-2009 à 13:19:29
Bonjour,
Je suis en trin de crée une base de donnée sous acces ma table et crée ma requette aussi et mais formulaire mais je souhaite crée une requette multicritére voila se que j'ai taper mais sa ne marche pas.
Option Compare Database
End Sub
Option Compare Database
Const Sourcezoneliste1 As String = "Patient" 'Table source de ZoneListe1
Const Champzone1 As String = "Patient" 'Champ table données correspondant à Zoneliste1
Const Sourcezoneliste2 As String = "Patient" 'Table source de ZoneListe2
Const Champzone2 As String = "Age" 'Champ table données correspondant à Zoneliste2
'Préciser obligatoirement 4 champs de tri, même plusieurs fois le même
Const Champtri1 As String = "NomFamille" 'Champ de tri ORDER BY n°1
Const Champtri2 As String = "EtabAdapt2" 'Champ de tri ORDER BY n°2
Private Sub Form_Open(Cancel As Integer) 'Initialisation des listes de critères
With ZoneListe1 'avec les constantes
.RowSourceType = "Table/Query"
.RowSource = Sourcezoneliste1
.ColumnHeads = False
End With
With ZoneListe2
.RowSourceType = "Table/Query"
.RowSource = Sourcezoneliste2
.ColumnHeads = False
End With
End Sub
Private Sub LancerRequete_Click() 'Bt Requête
Patient Requête
End Sub
Private Sub RequeteMulticriteres()
Dim strSQL As String
'Requête SQL si aucun critère sélectionné
strSQL = "SELECT * FROM " & Patient & " WHERE ([" & Champzone & "] Like '*' "
'Recueillir les critères renseignés
If Me.ZoneListe1 <> "" Then
strSQL1 = " And [" & Champzone1 & "] Like '" & Me.ZoneListe1 & "'"
Else
strSQL1 = ""
End If
If Me.ZoneListe2 <> "" Then
strSQL2 = " And [" & Champzone2 & "] Like '" & Me.ZoneListe2 & "'"
Else
strSQL2 = ""
End If
'Création de la requête SQL finale
strSQL = strSQL & strSQL1 & strSQL2 & strSQL3
'Tri final des enregistrements
strSQL = strSQL & " ) ORDER BY " & Champtri1 & ", " & Champtri2
'Affichage de la requête SQL finale
'MsgBox strSQL
'Remplir le sous formulaire avec la requête
Me.[LignesRequete].Form.RecordSource = strSQL
End Sub
Qui peut me donner un coup de main????????