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 35 36 37 38 39 40 41 42 43 44 45
|
Private Sub form_load()
' On donne l'activité à une zone fantôme
Call Me.txtDummy.SetFocus
Dim DateMin As Date
Dim DateMax As Date
Dim DateAjout As Date
Dim NombStat As Integer
' On va compter le nombre de lignes dans la table
Dim fld As DAO.Field
Dim rsc As DAO.Recordset
Dim bd As DAO.Database
Dim rvv As DAO.Recordset
Set bd = CurrentDb()
DateAjout = Now
DateMin = DateSerial(Year(Date), Month(Date), 1)
DateMax = DateSerial(Year(Date), Month(Date), 7)
' On constitue la requête qui choisi le champ à compter et à utiliser
Set rsc = bd.OpenRecordset("SELECT count(NumTypStat) FROM TypeStatistique ", dbOpenForwardOnly, dbReadOnly)
' On incrémente jusqu'à la valeur maximum
For Each fld In rsc.Fields
NombStat = fld.Value
Next
' On constitue la requête qui vérifie si les valeurs existent déjà
Set rvv = bd.OpenRecordset("SELECT DateDebutStat FROM Statistique WHERE DateDebutStat BETWEEN '" & DateMin & "' AND '" & DateMax & "'", dbReadOnly)
If rvv = "" Then
If MsgBox("Souhaitez vous ajouter les statistiques pour ce nouveau mois?", vbYesNo) = vbYes Then
' On ajoute les statistique en fonction du résultat du calcul
For i = 1 To NombStat
DoCmd.SetWarnings False
DoCmd.RunSQL "INSERT INTO Statistique (NumTypStat, DateDebutStat) VALUES ('" & i & "', '" & DateAjout & "')"
DoCmd.SetWarnings True
Next i
End If
End If
End Sub |
Partager