1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
| Option Compare Database
Public rechserv As Variant
Public SQL2 As Variant, SQL2Where As Variant, SQLinit As Variant
Private Sub Form_Load()
Me.cmbserv.Value = ""
Me.lstrésultat.RowSource = "SELECT [Base documentaire].[Fiche n°], [Base documentaire].TITRE, [Base documentaire].N°, [Base documentaire].Version, [Base documentaire].Service, [Base documentaire].[Statut dans le cycle documentaire] FROM [Base documentaire]"
SQLinit = "SELECT [Base documentaire].[Fiche n°], [Base documentaire].TITRE, [Base documentaire].N°, [Base documentaire].Version, [Base documentaire].Service, [Base documentaire].[Statut dans le cycle documentaire] FROM [Base documentaire]"
Me.lstrésultat.Requery
Me.Étiquette4.Caption = ""
CurrentDb.QueryDefs("Requête Documents par service").SQL = SQLinit
End Sub
Private Sub cmbserv_BeforeUpdate(Cancel As Integer)
rechserv = Me.cmbserv
RefreshQuery
End Sub
Private Sub RefreshQuery()
Dim SQL2 As String
Dim SQL2Where As String
SQL2 = "SELECT [Base documentaire].[Fiche n°], [Base documentaire].TITRE, [Base documentaire].N°, [Base documentaire].Version, [Base documentaire].Service, [Base documentaire].[Statut dans le cycle documentaire] FROM [Base documentaire]"
SQL2 = SQL2 & "where ((Service) like '*" & rechserv & "*')"
SQL2Where = Trim(Right(SQL2, Len(SQL2) - InStr(SQL2, "Where") - Len("Where") + 1))
SQL2 = SQL2 & "ORDER BY [Base documentaire].[Fiche n°] ASC"
SQL2 = SQL2 & ";"
Me.Étiquette4.Caption = "il y a " & DCount("*", "[Base documentaire]", SQL2Where) & "/" & DCount("*", "[Base documentaire]") & " document(s) correspondant à la recherche " & rerchserv
Me.lstrésultat.RowSource = SQL2
Me.lstrésultat.Requery
CurrentDb.QueryDefs("Requête Documents par service").SQL = SQL2
End Sub
Private Sub lstrésultat_DblClick(Cancel As Integer)
DoCmd.OpenForm "Base documentaire", acNormal, , "[Fiche n°]=" & Me.lstrésultat
End Sub |
Partager