Bonjour,

Je débute en VBA et je me retrouve avec un petit problème que je vous expose :

Voici le formulaire sur lequel je bloque :

Nom : formulaire.png
Affichages : 174
Taille : 27,6 Ko

Comme vous pouvez le voir il est très simple, deux barres textes où l'on indique les dates, et un bouton pour que l'on produise une fiche état que l'on peut voir ci-dessous :

Nom : fiche_etat.png
Affichages : 153
Taille : 38,7 Ko

Et voici le code VBA du bouton "Aperçus de l'état de synthèse"

Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
Private Sub BtEtat_Click()
 
    'On Error GoTo Err_BtEtat_Click
    Dim tbl         As Recordset
    Dim stDocName   As String
    Dim NbCpt       As Long
 
    ' Vérification des dates :
    Set tbl = CurrentDb.OpenRecordset("Séance", DB_OPEN_DYNASET)
    If Not IsDate(DateMin) Then
        ' si pas de date, on prend la date de la première séance :
        tbl.MoveFirst
        DateMin = tbl("Date")
    End If
    If Not IsDate(DateMax) Then
        ' si pas de date, on prend la date de la dernière séance :
        tbl.MoveLast
        DateMax = tbl("Date")
    End If
    tbl.Close
 
    ' Lancement de l'état :
    DoCmd.DoMenuItem acFormBar, acRecordsMenu, 5, , acMenuVer70
 
    stDocName = "EtatActiviteLabo"
    DoCmd.OpenReport stDocName, acPreview
 
Exit_BtEtat_Click:
    Exit Sub
 
Err_BtEtat_Click:
    MsgBox Err.Description
    Resume Exit_BtEtat_Click
End Sub
Ma question est que je ne comprend pas du tout comment on passe de ce code la... à cette fiche état