Skip to main content
Announcements
Have questions about Qlik Connect? Join us live on April 10th, at 11 AM ET: SIGN UP NOW
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

Macro - create button to set variable

Hi,

Just a quick question and I hope someone can help.

I am trying to make a macro which creates a new button and sets the action of this button to update a variable setting.

So far I have got the below which creates the button, names it and inserts the name of the variable to be updated but I cant seem to work out form the API what i should do next to insert the new variable value?

set newbutton = ActiveDocument.ActiveSheet.CreateButton

          set prop = newbutton.GetProperties

          prop.Text.v = "Remove"

 

          set ButtonActions = prop.ActionItems

          ButtonActions.Add

          ButtonActions.Item(0).Type=31 'Macro Varible set

          set ActionParam=ButtonActions.Item(0).Parameters

          ActionParam.Add

          ActionParam.Item(0).v="Test"

I am not sure what should come next...something like?

          ActionParam.Item(0).Data="Test2"

Thanks for your help!

1 Solution

Accepted Solutions
Gysbert_Wassenaar

You need to parameters for the set variable action

Sub CreateButton

set newbutton = ActiveDocument.ActiveSheet.CreateButton

          set prop = newbutton.GetProperties

          prop.Text.v = "Remove"

         set ButtonActions = prop.ActionItems

           ButtonActions.Add

           ButtonActions.Item(0).Type=31 'Macro Varible set

           set ActionParam=ButtonActions.Item(0).Parameters

           ActionParam.Add

           ActionParam.Item(0).v="v_Test"

          ActionParam.Add

           ActionParam.Item(1).v="Test"

          newbutton.SetProperties prop

   

end sub


talk is cheap, supply exceeds demand

View solution in original post

2 Replies
Gysbert_Wassenaar

You need to parameters for the set variable action

Sub CreateButton

set newbutton = ActiveDocument.ActiveSheet.CreateButton

          set prop = newbutton.GetProperties

          prop.Text.v = "Remove"

         set ButtonActions = prop.ActionItems

           ButtonActions.Add

           ButtonActions.Item(0).Type=31 'Macro Varible set

           set ActionParam=ButtonActions.Item(0).Parameters

           ActionParam.Add

           ActionParam.Item(0).v="v_Test"

          ActionParam.Add

           ActionParam.Item(1).v="Test"

          newbutton.SetProperties prop

   

end sub


talk is cheap, supply exceeds demand
Not applicable
Author

Thats brilliant thank you so much!