De begin balans opzoeken vanuit een eindbalans van de vorige periode

Status
Niet open voor verdere reacties.

Kickkick

Gebruiker
Lid geworden
24 feb 2012
Berichten
12
Beste accessers,

Mede dankzij dit forum ben ik al een aardige expert aan het worden op access gebied. Echter liep ik toch nog tegen een probleem aan waar ik niet uit kwam.

Ik zou graag de begin balans willen laten opzoeken in de kolom eind balans. Uiteraard moet de eindbalans dan uit de vorige week komen. Zoals in de bijgevoegde tabel is te zien kunnen er meerdere boten zijn en meerdere bezine soorten. Naar mijn idee moet mijn veld beginbalans dan een formule hebben, look-up of Iff, die zoekt naar de rij die bevat: ([weeknummer] -1), boot#, benzine# = eind balans. Nu weet ik dat deze vraag makkelijk op te lossen is in Excel met de SUMIFS functie, maar access is hierin een ander verhaal. Wie weet hoe dit toe te passen is in Access?

Untitled.jpg

Hopelijk kan 1 van jullie mij weer uit de brand helpen. Alvast bedankt!

Gr. T
 
Laatst bewerkt:
Maak er even een bestandje van, dan hoeven we niet alles over te typen. Het is namelijk wel redelijk simpel op te lossen, al is de formule een beetje omslachtig.
 
Is er iemand die mij hiermee misschien kan helpen?

Alvast bedankt!
 
Ik ben er mee bezig :) Had de laatste dagen wat minder tijd, maar ik zal 'm binnenkort posten. Het probleem is eigenlijk dat je dermate onhandige veldnamen en aliassen gebruikt, dat de echte formules erg lastig worden...
 
Maar op basis van deze query krijg je misschien een idee hoe je verder kunt.

Code:
SELECT DISTINCTROW IsoWeekNummer([Consumption_Date]) AS Week, [Consumption Qty].Consumption_Date, [Consumption Qty].VesselID, Fuel.FuelID, Fuel.[Fuel item], [Consumption Qty].[Quantity Start period], (SELECT TOP 1 [Quantity used Vessel] FROM [Consumption Qty] AS T1 WHERE (T1.[Consumption_Date] < [Consumption Qty].[Consumption_Date] AND T1.VesselID = [Consumption Qty].VesselID) ORDER BY T1.[Consumption_Date] DESC ) AS Last_QuantityUsed, [Consumption Qty].[Quantity used Vessel] AS QuantityUsed, (SELECT TOP 1 [Quantity Received] FROM [Consumption Qty] AS T1 WHERE (T1.[Consumption_Date] < [Consumption Qty].[Consumption_Date] AND T1.VesselID = [Consumption Qty].VesselID) ORDER BY T1.[Consumption_Date] DESC ) AS Last_Received, [Consumption Qty].[Quantity Received] AS QuantityReceived, (SELECT TOP 1 ([Quantity Received]-[Quantity used Vessel]) FROM [Consumption Qty] AS T1 WHERE (T1.[Consumption_Date] < [Consumption Qty].[Consumption_Date] AND T1.VesselID = [Consumption Qty].VesselID) ORDER BY T1.[Consumption_Date] DESC ) AS Last_EndStock, [QuantityReceived]-[QuantityUsed] AS EndStock
FROM (Fuel INNER JOIN [Consumption Qty] ON Fuel.[FuelID] = [Consumption Qty].[FuelID]) INNER JOIN Consumption ON [Consumption Qty].[Consumption ID] = Consumption.[Consumption ID]
GROUP BY IsoWeekNummer([Consumption_Date]), [Consumption Qty].Consumption_Date, [Consumption Qty].VesselID, Fuel.FuelID, Fuel.[Fuel item], [Consumption Qty].[Quantity Start period], [Consumption Qty].[Quantity used Vessel], [Consumption Qty].[Quantity Received]
ORDER BY IsoWeekNummer([Consumption_Date]);
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan