Do not input private or sensitive data. View Qlik Privacy & Cookie Policy.
Skip to main content

Announcements
Qlik Open Lakehouse is Now Generally Available! Discover the key highlights and partner resources here.
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

Complex Nested if Statement

Hi,

I need to calculate a value from the following expression.  Depending on the value of 'Value' and 'Indicator Number', I need to show a percentage, ratio, average or rate per 10,000.

I have tried this expression, but there is an error :

=if(Value='5',num(sum(number)/sum(total),'#,###.00'),

if(Value='4',num(sum(Number)/sum(Total)*10000),'#,###.00'),

if([Indicator Number]='7' and Value='3',num(sum(Number)/sum(Total)-sum(Number),'#,###.00'),

if(([Indicator Number]='8' or [Indicator Number]='9') and Value='2',sum(Number)/(sum(Total)+sum(Number),'#,###.00%'),

if(Value='1',num(sum(Number),'#,###.00'),

if(Value='2',num(sum(Number)/sum(Total),'#,###.00%'),num(sum(Number)/sum(Total),'#,###.00%')))))))

Can anyone see where Im going wrong?

Thanks,

Fiorano.

1 Solution

Accepted Solutions
alexandros17
Partner - Champion III
Partner - Champion III

unbalanced parenthesis, according to me the last parenthesis must be deleted in:

if(Value='4',num(sum(Number)/sum(Total)*10000),'#,###.00'),

Then fields are case sensitive so number and Number are different fields, if this is correct ok otherwise you must specify the correct world

Hope it helps

View solution in original post

2 Replies
alexandros17
Partner - Champion III
Partner - Champion III

unbalanced parenthesis, according to me the last parenthesis must be deleted in:

if(Value='4',num(sum(Number)/sum(Total)*10000),'#,###.00'),

Then fields are case sensitive so number and Number are different fields, if this is correct ok otherwise you must specify the correct world

Hope it helps

Not applicable
Author

Hi thanks for your reply.

Im having trouble working out with parenthesis to remove.  Could you post the amended statement?

Thanks again for your help.

Fiorano

Edit : expression is now working correctly :

=if(Value='5',num(sum(Number)/sum(Total),'#.00'),

if(Value='4',num(sum(Number)/sum(Total)*10000,'#,###.00'),

if([Indicator Number]='7' and Value='3',sum(Number)/sum(Total)-sum(Number),

if([Indicator Number]='8' and Value='2', num(sum(Number)/sum(Total)+sum(Number),'#,###.00%'),

if([Indicator Number]='9' and Value='2', num(sum(Number)/sum(Total)+sum(Number),'#,###.00%'),

if(Value='1',sum(Number),

if(Value='2',num(sum(Number)/sum(Total),'#,###.00%'),num(sum(Number)/sum(Total),'#,###.00%')

)))))))