Hoi mensen, ik zit al een tijdje tegen het volgende probleem aan te hikken:
In een database heb ik een formulier waarop je een aantal dingen kunt selecteren, zoals datum van en datum tot, klant(en) en product(en). De laatste twee zijn combolistboxes.
De code die onder de knop OK zit (zonder opmerkingen vanwege de layout) is de volgende:
Wat ik nu wil is de datum van en de datum tot eruit halen, om in een rapport te plaatsen. Ik denk dat dit het makkelijkste is door ze in een aparte hulptabelte plaatsen, net zoals bij de producten en de klanten gebeurt. Die code die daarvoor gebruikt wordt is echter voor een combobox, en dat zijn die twee datumvelden niet.
Hoe plaats ik die datumvelden nu in die hulptabel?
In een database heb ik een formulier waarop je een aantal dingen kunt selecteren, zoals datum van en datum tot, klant(en) en product(en). De laatste twee zijn combolistboxes.
De code die onder de knop OK zit (zonder opmerkingen vanwege de layout) is de volgende:
code:
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
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
| Private Sub cmdOK_Click()
Dim stDocName As String
Dim stLinkCriteria As String
Dim ctl As Control
Dim varItem As Variant
Dim FromDate As Date
Dim ToDate As Date
Dim rst As DAO.Recordset
FromDate = Me.txtBegindatum
ToDate = Me.txtEinddatum
stDocName = "rptKlantenkaart"
stLinkCriteria = "[Datum] Between #" & Format(FromDate, "mm-dd-yy") _
& "# AND #" & Format(ToDate, "mm-dd-yy") & "#"
Set rst = CurrentDb.OpenRecordset("tblGeselecteerdeKlanten")
Set ctl = Me.cboKlant
Call DeleteData
For Each varItem In ctl.ItemsSelected
With rst
.AddNew
!KlantNaam = ctl.ItemData(varItem)
.Update
End With
Next varItem
Set rst = CurrentDb.OpenRecordset("tblGeselecteerdeProducten")
Set ctl = Me.cboProduct
For Each varItem In ctl.ItemsSelected
With rst
.AddNew
!ProductNaam = ctl.ItemData(varItem)
.Update
End With
Next varItem
DoCmd.Close
Set rst = CurrentDb.OpenRecordset("SELECT DISTINCTROW Gegevens.Klant, _
Gegevens.Product, Gegevens.Datum " _
& "FROM tblGeselecteerdeProducten INNER JOIN (tblGeselecteerdeKlanten INNER _
JOIN Gegevens ON tblGeselecteerdeKlanten.KlantNaam = Gegevens.Klant) ON _
tblGeselecteerdeProducten.ProductNaam = Gegevens.Product " _
& "GROUP BY Gegevens.Klant, Gegevens.Product, Gegevens.Datum " _
& "HAVING (((Gegevens.Datum) Between #" & Format(FromDate, "mm-dd-yy") _
& "# And #" & Format(ToDate, "mm-dd-yy") & "#));")
If rst.RecordCount > 0 Then
DoCmd.OpenReport stDocName, acViewPreview, , stLinkCriteria
Else
MsgBox "Er zijn geen gegevens geselecteerd!", vbOKOnly + _
vbInformation, "Melding"
End If
Set rst = Nothing
Set ctl = Nothing
End Sub |
Wat ik nu wil is de datum van en de datum tot eruit halen, om in een rapport te plaatsen. Ik denk dat dit het makkelijkste is door ze in een aparte hulptabelte plaatsen, net zoals bij de producten en de klanten gebeurt. Die code die daarvoor gebruikt wordt is echter voor een combobox, en dat zijn die twee datumvelden niet.
Hoe plaats ik die datumvelden nu in die hulptabel?
And if you don't expect too much from me, you might not be let down.