1 2 3 4 5 6 7 8 9 10 11
| Public Function Lettre(vlettre As String, vindice As Integer)
Dim dbs As Database, qdf As QueryDef, strSQL As String, strSQL2 As String, strSQL3 As String
strSQL = "Select SUM(Nbr)AS Resultat, Prefab FROM(SELECT Count(*) AS Compteur,Prefab,Compteur*Nb AS nbr FROM RepereConcat WHERE MID(Repere,1,1) LIKE '" & vlettre & "' AND Prefab = Prefab GROUP BY Prefab, Nb)WHERE Prefab=Prefab GROUP By Prefab "
Set dbs = CurrentDb
For i = 2 To vindice
strSQL2 = "Select SUM(Nbr)AS Resultat, Prefab FROM(SELECT Count(*) AS Compteur,Prefab,Compteur*Nb AS nbr FROM RepereConcat WHERE MID(Repere," & i & ",1) LIKE '" & vlettre & "' AND Prefab = Prefab GROUP BY Prefab, Nb)WHERE Prefab=Prefab GROUP By Prefab "
strSQL = strSQL & " union all " & strSQL2
Next
strSQL3 = "Select SUM(Resultat)AS " & vlettre & " , Prefab FROM(" & strSQL & ") Where Prefab =Prefab GROUP BY Prefab;"
Set qdf = dbs.CreateQueryDef(vlettre, strSQL3)
End Function |
Partager