Skip to main content
Announcements
Qlik Connect 2025: 3 days of full immersion in data, analytics, and AI. May 13-15 | Orlando, FL: Learn More
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

[ASK] how to make auto show-hide sheet

Hello qlikviewer..

I have a task to make sheet show and hide automatically

I have 4 sheet (a, b, c, d)

And everysheet will show for 5 second and then hide, then go to next shet for 5 second and then hide, and on and on..

How to make that?

Many thx...

5 Replies
tresesco
MVP
MVP

Anonymous
Not applicable
Author

In sheet properties>> Layout tab>> in show conditional , use following expressions.

for sheet a

if(mod(second(now()),20)>0 and mod(second(now()),20)<=5,1,0)

for sheet b

if(mod(second(now()),20)>5 and mod(second(now()),20)<=10,1,0)

for sheet a

if(mod(second(now()),20)>10 and mod(second(now()),20)<=15,1,0)

for sheet a

if(mod(second(now()),20)>15 and mod(second(now()),20)<=20,1,0)

Hope it will help you out

Regards

Nitin

Not applicable
Author

Hi,

In this thread you will find a good working solution from John Witherspoon

http://community.qlik.com/message/96051#96051

It is working fine I have an app based on his solution running all the time.

regards,

Gerrit

Not applicable
Author

I prefer not using macro for this

And I will try nitin solution

Many thx nitin, and other qlikviewer

Not applicable
Author

i have worked with these in some time and take a conclution,

the formula that nitin gave only able to use if you have 60 vVarDur

where vVarDur = [total of sheet that you will use] * [duration of each variable to show]

but if you have more than 60 vVarDur, then you maybe need formula like this :

0. Max vVarDur=60*60=3600 (0-3599) //maximal vVarDur that can be used

1. Qlikview variable you need :

1.1. vModSec = mod((minute(now())*60)+Second(now()),vVarDur)

//vVarDur is total of sheet*duration@sheet that you will use

1.2. vModSecMul = [value_number] //duration of each sheet in second

2. Sheet Properties -> Conditional

2.1.  =if($(vModSec)>(x*$(vModSecMul)) and $(vModSec)<=(y*$(vModSecMul)),1,0)

//x is the *number of previous sheet, y is the

*number of current sheet

*note :

if current sheet is your first sheet, then x=0 and y=1

if current sheet is your second sheet, then x=1 and y=2

.... and on ...

i hope this'll help

correct me if i'm wrong

many thx for the clue