som uitrekenen in een query

Status
Niet open voor verdere reacties.

raymin

Gebruiker
Lid geworden
24 aug 2010
Berichten
127
hallo allemaal,

ik heb een query waarin twee keer een aantal gewerkte uren staan en daarna het uurloon hoe laat ik nu in de kolom erachter de twee uren bij elkaar optellen en dit maal het uurloon doen?

dus:

uren A uren B uurloon A+B*uurloon

ik neem aan dat dit in de ontwerp weergave moet gebeuren, maar verder geen idee.
 
Begin is goed :thumb:

Totaal: ([uren A]+[uren B])*[uurloon]
 
Als je het in exel doet haak ik af,
maar als je het in access hebt staan kan ik je wel helpen met een query, dat is niet zo moeilijk
 
absoluut in access, ik ben een redelijke excel tijger ;-) en moest nu toch maar eens over op access, met allerlei losse excel sheets :p
 
Totaal: ([uren A]+[uren B])*[uurloon]

Ik moet goed graven in mijn Access geheugen
je moet eerst een nieuwe kolom aanmaken met uurloon

SELECT [uren A],[Uren B]
FROM Tabelnaam
WHERE Uurloon = ([uren A]+[uren B])*[uurloon]

uurloon dit is dus geen kolom maar hier moet je een getal invoeren


ben ik een beetje duidelijk?
 
Dit gaat niet helemaal de goede kant op.... TS zegt dat-ie al een query heeft met de [uren A] en [Uren B], alsmede het veld Uurloon. Mijn formule: (Totaal: ([uren A]+[uren B])*[uurloon] ) zet je in een nieuw veld, en dan ben je er al. Heb je dat al geprobeerd?
 
Laatst bewerkt:
Jemig lekker snel forum hier! :)

Ik heb inderdaad al een query met de kolommen urenA urenB en het uurloon. Waar zet ik de "formule" in de volgende kolom? Ik ben een vreselijke beginner, dat is wel duidelijk.
 
De formule kun je in het eerstvolgende lege veld zetten/maken.
 
hmmm ok.. ik zat veel te moeilijk te denken... dat werkt, nu komt de volgende vraag natuurlijk :)

Als ik bij uren A en bij uren B een getal invul gaat het goed, echter uren B zijn er niet altijd. Ik moet nu een 0 invullen om de formule te laten werken. Kan ik ergens de 0 als standaard waarde invullen.

Alvast weer bedankt voor jullie snelle reactie en geduld :thumb:
 
Dan krijg je zoiets:
Totaal: ([uren A]+IIF([uren B] Is Null;0;[uren B]))*[uurloon] )
 
Geweldig! ik raak een beetje enthousiast. het werk en snap redelijk wat de formule doet, maar waar staat IIF voor?
 
IIF staat voor Immediate IF. In een query kun je geen If constructie gebruiken, omdat je op het moment van uitvoeren van de If geen controle hebt over het record. Met IIF kun je daarentegen wèl een 'inline' vergelijking maken. IIF levert als uitkomst alleen TRUE en FALSE op; met If kun je in VB(A) een programma verschillende kanten opsturen.
IIF wordt dus alleen gebruikt om te kijken of iets waar is of niet. In jouw voorbeeld kijken we of het veld [Uren B] leeg is ( met Is Null). Als dat zo is (uitkomst: TRUE) dan wordt het getal 0 ingevuld. Is de uitkomst FALSE, dan staat er dus iets in het veld, en dan wordt het de waarde van het veld [Uren B] gebruikt.
In zijn algemeenheid luidt de functie dus:
IIF([Vergelijking] = Waar; [Waarde 1];[Waarde2])
 
Duidelijk, bedankt.

Andere kwestie; ik heb een tabel aangemaakt voor "werkomschrijving" deze komt terug in de query, zodat ik nu een keuzelijst krijg. Ik zou echter graag willen dat ik in dit veld ook een nieuwe omschrijving op willen nemen die dan vervolgens in de tabel werkomschrijving komt te staan. (en dus in de keuzelijst voorkomt in het volgende record)

Is dit mogelijk?
 
Ja, dat kan, maar dat is een nieuw onderwerp. Maak daar even een nieuwe vraag voor aan, dat houdt het forum overzichtelijk.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan