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

Announcements
Join us in Toronto Sept 9th for Qlik's AI Reality Tour! Register Now
cancel
Showing results for 
Search instead for 
Did you mean: 
AJ2024
Contributor II
Contributor II

Chart Value Label Formatting Based on a Variable

Hello,

I have multiple charts in my app that rely on variables to determine which master measure is displayed. I'm trying to format the value labels differently based on the master measure that is used, or more simply, based on the variable value. Here is an example:

IF(vButton_Summary_Measure = 'Individuals #', [# of Individuals],
IF(vButton_Summary_Measure = 'Deposits $', [$ Total Deposits],
    IF(vButton_Summary_Measure = 'Deposits #', [# Total Deposits],
        IF(vButton_Summary_Measure = 'Loans $', [$ Total Loans],
            IF(vButton_Summary_Measure = 'Loans #', [# Total Loans],
                IF(vButton_Summary_Measure = 'Total Accounts $', [$ Total Accounts Balance],
                    IF(vButton_Summary_Measure = 'Total Accounts #', [# Total Accounts],))))))
 
In the chart, I want all # variables to have the value labels formatted as #,##0 and all $ variables formatted as $#,##0.
 
Is this possible?
 
Thanks,
AJ

 

Labels (2)
2 Solutions

Accepted Solutions
brunobertels
Master
Master

Hi 

not tested but may be like this 

If(wildmatch(vButton_Summary_Measure,'#'),

num(

IF(vButton_Summary_Measure = 'Individuals #', [# of Individuals],
IF(vButton_Summary_Measure = 'Deposits $', [$ Total Deposits],
    IF(vButton_Summary_Measure = 'Deposits #', [# Total Deposits],
        IF(vButton_Summary_Measure = 'Loans $', [$ Total Loans],
            IF(vButton_Summary_Measure = 'Loans #', [# Total Loans],
                IF(vButton_Summary_Measure = 'Total Accounts $', [$ Total Accounts Balance],
                    IF(vButton_Summary_Measure = 'Total Accounts #', [# Total Accounts],))))))
,#,##0 , 
num(
IF(vButton_Summary_Measure = 'Individuals #', [# of Individuals],
IF(vButton_Summary_Measure = 'Deposits $', [$ Total Deposits],
    IF(vButton_Summary_Measure = 'Deposits #', [# Total Deposits],
        IF(vButton_Summary_Measure = 'Loans $', [$ Total Loans],
            IF(vButton_Summary_Measure = 'Loans #', [# Total Loans],
                IF(vButton_Summary_Measure = 'Total Accounts $', [$ Total Accounts Balance],
                    IF(vButton_Summary_Measure = 'Total Accounts #', [# Total Accounts],)))))),
$#,##0))

View solution in original post

AJ2024
Contributor II
Contributor II
Author

Worked like a charm after a few minor tweaks, thank you!

Now if I could only leverage auto formatting to display in thousands, millions, etc... I don't think this is possible though. I could manually do it in the expression, but it needs to be dynamic because the values will range greatly depending on how the end user is filtering. 

Here is the final code:

If(wildmatch(vButton_Summary_Measure,'*#'),

num(

IF(vButton_Summary_Measure = 'Individuals #', [# of Individuals],
IF(vButton_Summary_Measure = 'Deposits $', [$ Total Deposits],
IF(vButton_Summary_Measure = 'Deposits #', [# Total Deposits],
IF(vButton_Summary_Measure = 'Loans $', [$ Total Loans],
IF(vButton_Summary_Measure = 'Loans #', [# Total Loans],
IF(vButton_Summary_Measure = 'Total Accounts $', [$ Total Accounts Balance],
IF(vButton_Summary_Measure = 'Total Accounts #', [# Total Accounts],)))))))
,'#,##0') ,
num(
IF(vButton_Summary_Measure = 'Individuals #', [# of Individuals],
IF(vButton_Summary_Measure = 'Deposits $', [$ Total Deposits],
IF(vButton_Summary_Measure = 'Deposits #', [# Total Deposits],
IF(vButton_Summary_Measure = 'Loans $', [$ Total Loans],
IF(vButton_Summary_Measure = 'Loans #', [# Total Loans],
IF(vButton_Summary_Measure = 'Total Accounts $', [$ Total Accounts Balance],
IF(vButton_Summary_Measure = 'Total Accounts #', [# Total Accounts],))))))),
'$#,##0'))

View solution in original post

3 Replies
brunobertels
Master
Master

Hi 

not tested but may be like this 

If(wildmatch(vButton_Summary_Measure,'#'),

num(

IF(vButton_Summary_Measure = 'Individuals #', [# of Individuals],
IF(vButton_Summary_Measure = 'Deposits $', [$ Total Deposits],
    IF(vButton_Summary_Measure = 'Deposits #', [# Total Deposits],
        IF(vButton_Summary_Measure = 'Loans $', [$ Total Loans],
            IF(vButton_Summary_Measure = 'Loans #', [# Total Loans],
                IF(vButton_Summary_Measure = 'Total Accounts $', [$ Total Accounts Balance],
                    IF(vButton_Summary_Measure = 'Total Accounts #', [# Total Accounts],))))))
,#,##0 , 
num(
IF(vButton_Summary_Measure = 'Individuals #', [# of Individuals],
IF(vButton_Summary_Measure = 'Deposits $', [$ Total Deposits],
    IF(vButton_Summary_Measure = 'Deposits #', [# Total Deposits],
        IF(vButton_Summary_Measure = 'Loans $', [$ Total Loans],
            IF(vButton_Summary_Measure = 'Loans #', [# Total Loans],
                IF(vButton_Summary_Measure = 'Total Accounts $', [$ Total Accounts Balance],
                    IF(vButton_Summary_Measure = 'Total Accounts #', [# Total Accounts],)))))),
$#,##0))
AJ2024
Contributor II
Contributor II
Author

Worked like a charm after a few minor tweaks, thank you!

Now if I could only leverage auto formatting to display in thousands, millions, etc... I don't think this is possible though. I could manually do it in the expression, but it needs to be dynamic because the values will range greatly depending on how the end user is filtering. 

Here is the final code:

If(wildmatch(vButton_Summary_Measure,'*#'),

num(

IF(vButton_Summary_Measure = 'Individuals #', [# of Individuals],
IF(vButton_Summary_Measure = 'Deposits $', [$ Total Deposits],
IF(vButton_Summary_Measure = 'Deposits #', [# Total Deposits],
IF(vButton_Summary_Measure = 'Loans $', [$ Total Loans],
IF(vButton_Summary_Measure = 'Loans #', [# Total Loans],
IF(vButton_Summary_Measure = 'Total Accounts $', [$ Total Accounts Balance],
IF(vButton_Summary_Measure = 'Total Accounts #', [# Total Accounts],)))))))
,'#,##0') ,
num(
IF(vButton_Summary_Measure = 'Individuals #', [# of Individuals],
IF(vButton_Summary_Measure = 'Deposits $', [$ Total Deposits],
IF(vButton_Summary_Measure = 'Deposits #', [# Total Deposits],
IF(vButton_Summary_Measure = 'Loans $', [$ Total Loans],
IF(vButton_Summary_Measure = 'Loans #', [# Total Loans],
IF(vButton_Summary_Measure = 'Total Accounts $', [$ Total Accounts Balance],
IF(vButton_Summary_Measure = 'Total Accounts #', [# Total Accounts],))))))),
'$#,##0'))

brunobertels
Master
Master

Hi 

search in the forum for "Dynamically changing number formats" and adapt the approach for your own mesure 

It will of course expand it 

 

regards