Productie totalen

Status
Niet open voor verdere reacties.
Hoi Greenery80,

Bedankt voor het antwoord. De query loopt bijna perfect op 1 ding na. Hij groepeert de data nog altijd apart. Dat wil zeggen een levering die op de 25ste is gedaan word apart weergegeven van de 26ste. Het is de bedoeling dat het samen gaat. Ik heb dit probleem ook eerder gehad en toen heb ik dat ondervangen met de code die hier in staat. Nu loopt het helaas niet, ik ga weer zoeken

Code:
Dim strTabel As String, strSQL As String
Dim sBeginDatum As Date, sEindDatum As Date
Dim iBegin As Double, iEind As Double
Dim tmp As String

    sBeginDatum = CDate(Me.Startdatum.Value)
    sEindDatum = CDate(Me.Einddatum.Value)
    iBegin = CDbl(sBeginDatum)
    iEind = CDbl(sEindDatum)

    strTabel = "[Totalen op Datum]"
    strSQL = "Select SomvanHoeveelheid, LocatieID, LeverancierID, ProductID From " & strTabel & vbCrLf _
& "WHERE (([Datum] Between cDate(" & iBegin & ") And cDate(" & iEind & ")) " & vbCrLf _
& "And ([Factuur ontvangen]=False) " & vbCrLf _
& "And ([LeverancierID] Not Between 5 And 9))"

''tmp = InputBox("", "", strSQL)

Me.RecordSource = strSQL
Me.Requery
 
Je hoeft me echt niet te bedanken, het was Tardis die het zag.

De query in VBA roept alleen de data op die je aanmaakt in de query.
Kortom er wordt niks gegroepeerd.

Kleine tip:
Probeer eerst eens een query te maken van deze query (ik neem hierbij aan dat je je originele query ergens anders voor wilt gebruiken). Deze sql statement kan je dan bijna 1-op-1 plakken in VBA. De query Builder is toch iets handiger, dan code typen in VBA.
 
Laatst bewerkt:
ik heb het nu pas begrepen en weten op te lossen. Dit is de uiteindelijke code geworden:


Code:
Dim strTabel As String, strSQL As String
Dim sBeginDatum As Date, sEindDatum As Date
Dim iBegin As Double, iEind As Double
Dim tmp As String

    sBeginDatum = CDate(Me.Startdatum.Value)
    sEindDatum = CDate(Me.Einddatum.Value)
    iBegin = CDbl(sBeginDatum)
    iEind = CDbl(sEindDatum)

    strTabel = "[Totalen op Datum]"
    strSQL = "SELECT AlleOrders.LocatieID, AlleOrders.LeverancierID, AlleOrders.ProductID, Sum(AlleOrders.Hoeveelheid) AS SomVanHoeveelheid, Leverancier.Leverancier, Producten.Product, Bedrijfsonderdelen.Bedrijfsonderdeel, AlleOrders.[Factuur ontvangen] " & _
"FROM Leverancier INNER JOIN (Bedrijfsonderdelen INNER JOIN (Producten INNER JOIN AlleOrders ON Producten.ProductID = AlleOrders.ProductID) ON Bedrijfsonderdelen.LocatieID = AlleOrders.LocatieID) ON Leverancier.LeverancierID = AlleOrders.LeverancierID " & _
"WHERE (((AlleOrders.LeverancierID) Not Between 5 And 9) And [AlleOrders].[Datum] Between CDate(" & iBegin & ") And CDate(" & iEind & ") AND ((AlleOrders.[Factuur ontvangen])=False)) " & _
"GROUP BY AlleOrders.LocatieID, AlleOrders.LeverancierID, AlleOrders.ProductID, Leverancier.Leverancier, Producten.Product, Bedrijfsonderdelen.Bedrijfsonderdeel, AlleOrders.[Factuur ontvangen]; "

''tmp = InputBox("", "", strSQL)

Me.RecordSource = strSQL
Me.Requery

Iedereen die heeft meegedacht hardstikke bedankt :thumb::)
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan