Qlik Community

QlikView Creating Analytics

Discussion Board for collaboration related to Creating Analytics for QlikView.

Not applicable

Exporting to PPT


Hi Experts,

We have a requirement of exporting a chart type to ppt.

Can we achieve this in Qlikview 11

Any pointers on this will be appreciated.

Regards,

Roy

Tags (4)
1 Solution

Accepted Solutions

Re: Exporting to PPT

Yest possible.

have a look at attached document.

Regards

ASHFAQ

4 Replies
vardhancse
Valued Contributor II

Re: Exporting to PPT

Try to run some macros to export to PPT.

Re: Exporting to PPT

Yest possible.

have a look at attached document.

Regards

ASHFAQ

Not applicable

Re: Exporting to PPT

Hi Ashfaq,

Thanks for the reply.  I have used added that Macro using a Button Action Run MAcro. However, it seems doing half the job, Its trigerring MS power point which a blank slide with no object attached. I have tried tweaking the code a little but in vain. Is there any other thing we need to have to run this successfully?

Also to add i have tried it from two different systems but while its popping up a blank MS Powerpoint page in one , its showing nothing in the other (apart from a running macro message at the bottom).

Please suggest.

many thanks,

Roy

Not applicable

Re: Exporting to PPT

Hi Ashfaq/Roy,

This below ppt  macro works however the dashboards I have looks a lot more complex with 5 to 6 objects in a single sheet, once the ppt is generated it is putting all the objects from the same sheet in a single slide of the ppt. Is it possible to have a even gap between all the sheet objects when there are exported to ppt. or otherwise one chart in one slide placed in the middle of the ppt, just to make it look better.

sub ppt

pos = activedocument.evaluate("=getactivesheetid()")

set v = activedocument.Getvariable("vShowAll")

v.SetContent 1,TRUE

Set PPApp = CreateObject("Powerpoint.Application")

PPApp.Visible = True

Set PPPres = PPApp.Presentations.Add

for j = 0 to ActiveDocument.NoOfSheets - 1

     rev = activedocument.noofsheets - j - 1

     Activedocument.ActivateSheet rev

'      ActiveDocument.Sheets(j).Activate

     ActiveDocument.GetApplication.WaitForIdle

     set s=ActiveDocument.ActiveSheet

     charts=s.GetSheetObjects

     Set PPSlide = PPPres.Slides.Add(1, 1)     

     PPSlide.Shapes(1).Delete

     PPSlide.Shapes(1).Delete

           for i=lbound(charts) to ubound(charts)

                if(UCASE(mid(charts(i).getobjectid,10,2)))="CH" then

'                   Set PPSlide = PPPres.Slides.Add(1, 1)

'                     PPSlide.Shapes(1).Delete ' removes the title

'                     PPSlide.Shapes(1).Delete ' removes the text box

                    ActiveDocument.GetSheetObject(charts(i).getobjectid).CopyBitmapToClipboard

                    PPSlide.Shapes.Paste

                end if

                iterno = 1

                for each shape in PPSlide.Shapes

                with shape

                .top = 1 * iterno

                .left = 1

                end with

                iterno =  iterno * 300

                next

     next

next

'PPPres.SaveAs "C:\PresentationPPT.ppt"

'PPPres.Close

'PPApp.Quit

Set PPSlide = Nothing

Set PPPres = Nothing

Set PPApp = Nothing

set v = activedocument.Getvariable("vShowAll")

v.SetContent 0,TRUE

activedocument.sheets(pos).activate

msgbox "PPT Extract Successful",64,"Complete"

end sub

Thanks,

D

Community Browser