4 Replies Latest reply: Nov 16, 2014 7:46 AM by durgaprasad Narasimman RSS

    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

        • Re: Exporting to PPT
          Sasi Vardhan KV

          Try to run some macros to export to PPT.

          • Re: Exporting to PPT
            Ashfaq Mohammed

            Yest possible.

             

            have a look at attached document.

             

            Regards

            ASHFAQ

              • 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

                  • 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