Jump to content
  • 0

IF FUNCTION


lavino

Question

Posted (edited)

k heb de volgende velden aangemaakt :

...................... veldtype formules etc

bruto bedrag number indexed

btw code number indexed, by value list, existing

btw bedrag calculation round(brutobedrag*btw code/(btw code+100);2)

btw 19% calculation round(if btw=19;btw bedrag;btw code=0);2)

btw 6% calculation round(if btw=6;btw bedrag;btw code=0);2)

btw 0% calculation round(if btw=0;btw bedrag;btw code=0);2)

nettobedrag calculation round(brutobedrag-(btw 19%+btw 6%+btw0%)

 

in de tabel mode / view as table

worden de kolommen btw 19%, 6% en 0% alsmede het netto bedrag keurig ingevuld

het gaat allemaal goed als ik de btw codes 19 of 6 gebruik

echter ..... als ik btw code 0 gebruik, dan verschijnt er in de kolommen btw 19% en btw 6% een bedrag van 1,00 terwijl

er in allebei 0,00 zou moeten staan, btw % wordt uiteraard wel gevuld met 0,00 wat kan er aan mankeren ?

 

verder heb ik voor de btw code een valuelist gemaakt met de waarden : "19" "6" en "0)

de valuelist werkt ook niet, bij het invullen van de btw code verschijnt niet het lijstje met de 3 waarden. ?

 

weet iemand een oplossing

 

alvast bedankt voor reacties

Untitled.fp7

Edited by Guest

16 answers to this question

Recommended Posts

  • 0
Posted

Veldnamen moeten niet tussen aanhalingstekens staan. Krulhaken moeten weg. "...defaultResult" moet worden vervangen door een resultaat.

Verder is de berekening ook niet goed. Hier wordt het nettobedrag x 100 uitgerekend, (als 'Bedrag' het brutobedrag is).

 

Bovendien is het eenvoudiger wanneer je van xcat1 een numeriek veld maakt met als inhoud 19, 6 of 0.

 

De btw is dan, als 'Bedrag' het nettobedrag is:

 

Round ( Bedrag * xcat1 / 100 ; 2 )

 

Als 'Bedrag' het bruto-bedrag is:

 

Round ( Bedrag * 100 / ( xcat1 + 100 ) ; 2 )

  • 0
Posted

Case ( "xcat1" ="19%" ; "Bedrag"/119 { ; "xcat1" ="6%";"Bedrag"/106";... defaultResult } )

 

Verwijder overbodige tekens in de formule en wijzig default.

Je formule komt er dan zo uit te zien.

 

Case ( xcat1 ="19%" ; "Bedrag"/119 ; xcat1 ="6%";"Bedrag"/106"; 0 )

 

 

de { tekens geven aan dat je dit deel van de formule niet perse hoeft in te vullen. Je kan dus ' ; 0 ' weglaten.

 

Quint

  • 0
Posted

Neem me niet kwalijk, er staat een fout in mijn tweede formule (wanneer 'Bedrag' het bruto-bedrag is). Deze moet zijn:

 

Round ( Bedrag * xcat1 / ( xcat1 + 100 ) ; 2 )

 

Met excuses,

 

Henk

  • 0
Posted
Neem me niet kwalijk, er staat een fout in mijn tweede formule (wanneer 'Bedrag' het bruto-bedrag is). Deze moet zijn:

 

Round ( Bedrag * xcat1 / ( xcat1 + 100 ) ; 2 )

 

Met excuses,

 

Henk

bedankt Henk,

de formules geven inderdaad geen foutmeldingen, meer. Echter

komen dezelfde bedragen te voorschijn in elk van de regels :

BTW19%

BTW 6%,

BTW 0%

 

bedrag is inderdaad het brutobedrag en ik wil hier de BTW uit halen om het daarbij ook het nettobedrag te bepalen

hiervoor gebruik ik de formule : bedrag-(BTW19%+6%+0%)

 

jouw formule moet wellicht in combinatie met een IF of een CASE formule

gebruikt worden. Ik ben in dit opzicht nog een beginner. ?

misschien heb je nog suggesties.

vriendelijke groet

Fred

  • 0
Posted

Als ik het goed begrijp heb je dus in elk record 3 calculatievelden voor het berekenen van de btw volgens de verschillende tarieven. (De derde is overigens altijd 0). Daarna is er nog een calculatie, die het juiste bedrag kiest n.a.v. de keuze in veld 'xcat1'.

 

Dit is onnodig omslachtig, maak één (numeriek) veld waarin je het btw-tarief voor het huidige record kan kiezen (dit zou met radio-buttons kunnen; inhoud 19, 6 en 0) en bereken de btw op grond van deze keuze. Laten we dit nieuwe veld even 'BTWpercentage' noemen.

 

Dan heb je dus je calculatieveld 'BTW' met de formule:

 

Round ( Bedrag * BTWpercentage / ( BTWpercentage + 100 ) ; 2 )

 

Mocht het btw-tarief veranderen (en dat zal ooit gebeuren), dan hoef je alleen maar je value-list aan te passen, de waardes in de oude records blijven zoals ze waren (immers: zij hebben toen die btw betaald, dat verandert niet), en voor nieuwe records wordt het btw-tarief gekozen uit de nieuwe lijst.

 

Succes,

Henk

  • 0
Posted
Als ik het goed begrijp heb je dus in elk record 3 calculatievelden voor het berekenen van de btw volgens de verschillende tarieven. (De derde is overigens altijd 0). Daarna is er nog een calculatie, die het juiste bedrag kiest n.a.v. de keuze in veld 'xcat1'.

 

Dit is onnodig omslachtig, maak één (numeriek) veld waarin je het btw-tarief voor het huidige record kan kiezen (dit zou met radio-buttons kunnen; inhoud 19, 6 en 0) en bereken de btw op grond van deze keuze. Laten we dit nieuwe veld even 'BTWpercentage' noemen.

 

Dan heb je dus je calculatieveld 'BTW' met de formule:

 

Round ( Bedrag * BTWpercentage / ( BTWpercentage + 100 ) ; 2 )

 

Mocht het btw-tarief veranderen (en dat zal ooit gebeuren), dan hoef je alleen maar je value-list aan te passen, de waardes in de oude records blijven zoals ze waren (immers: zij hebben toen die btw betaald, dat verandert niet), en voor nieuwe records wordt het btw-tarief gekozen uit de nieuwe lijst.

 

Succes,

Henk

Hallo Henk,

bedankt voor je reactie. ik heb de formule aangepast , het werkt uitstekend. ik ga verder nog dubben hoe ik btw bedragen per BTWpercentage kan totaliseren. ik laat je nog weten hoe ik het gedaan heb

inmiddels hartelijk dank voor je hulp.

groet

Fred

  • 0
Posted

ik heb de volgende velden:

BIJ ……………. getal

Bedrag_EUR…..getal

AfBij…………….tekst

 

alle bedragen die via de bankmutaties

binnen komen worden in veld bedrag_EUR

weergegeven. dus zowel de af als bij bedragen.

het veld af bij geeft bij het importeren goed aan of het af of bij is.

ik gebruik het veld bedrag_EUR voor bedragen die onder af

moeten komen.

 

ik wil de IF functie gebruiken om de ontvangen bedragen

in veld BIJ te krijgen.

ik heb gebruikt : if(AfBij=Bij;Bedrag_EUR;0) dit werkt niet

is er iemand die mij aan de juiste formule kan helpen

  • 0
Posted

Ligt er een beetje aan wat je wilt doen.

 

Als je het veld AfBij wilt vergelijken met het veld Bij, dan is het probleem dat Bij een getalveld is en AfBij een tekstveld

 

Als je het veld AfBij wilt vergelijken met de tekst Bij, dan is de formule if(AfBij = "Bij" .....) de aanhalingstekens geven aan dat het om een tekst gaat en niet om een veld

  • 0
Posted

bedankt voor de reacties

ben er nog niet uit , ik heb Bij tussen "" gezet, werkt nog niet .

maar wat moet er op de plaats van de ......) komen ?

het is de bedoeling dat de ontvangen bedragen in de kolom Bij (getalsveld )komen. en de uitgaven in af ( Bedrag_EUR) kolom blijven.

  • 0
Posted

bedankt felix

gedeeltelijk goed

de ontvangsten worden nu goed in de kolom bij gezet,

alleen het bedrag blijft ook in de af kolom staan

zie bijgaand voorbeeld

5a758dd35074f_Schermafbeelding2014-12-10om19_52_48.jpg.bcd49b3b9d14c190f4b4b0d3c8add1f1.jpg

  • 0
Posted

ik heb in een bankafschriften database

een veld om het huidige saldo te berekenen.

zie bijgaande schermafbeeldingen

nadat de mutaties zijn geïmporteerd zou het eindsaldo(huidig saldo ) moeten kloppen

dit is niet het geval na in het" beheren, database weer aangeklikt te hebben, lukt het meestal om het juiste bedrag

te krijgen. doe ik iets fout ?

5a758dd35737e_Schermafbeelding2014-12-16om13_27_06.jpg.887213576a1100b8d0428069a50d859a.jpg

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...