How to Embed Tableau Workbooks in Powerpoint

Tableau Public embed code

Before I start, I just wanted to point out that if you add a workbook to a Tableau server (with either Tableau Server or Tableau Online or Tableau Public), you will get an embed code, so you can just insert that code in your powerpoint/blog/whatever to link to the Tableau Workbook online. Click to view the video instructions.

Embed & Open Tableau Workbook in Powerpoint Presentation

But if what you want is to open a Tableau workbook on the desktop seamlessly from Powerpoint presentation, then you need to do the following steps:

  1. Open Powerpoint – File – Options, you’ll see this window below. Choose the “Customize Ribbon” tab and make sure the “Developer” option is checked. Then click OK. Save the powerpoint file as “PowerPoint Macro-Enabled Presentation”.


2. Save Tableau workbook in the form of “Tableau Packaged Workbook (.twbx)” and also export the workbook as image.

3. Back to your powerpoint. From the “INSERT” menu, click on the “Object” button. Click “Create from file” and click “Browse” to choose the Tableau Packaged Workbook that you want to embed. Then you will see a small icon on your powerpoint page.


3. From the “HOME” tab, on the very right side, click Select – Selection Pane. Rename your object (which is, the Tableau workbook you just imported). For example, rename it “TableauWorkbook”.


4. Next we’ll try to insert an image. Before that, click the “Image(ActiveX Control)” button from the “DEVELOPER” menu. Then draw an area where you will put the image.

Tip: If you don’t see a tab called “DEVELOPER”, go back to step 1 to check that.


5. Choose this gray area, and click “Visual Basic” (or press Alt + F11) from the “DEVELOPER” menu.


Copy the code below & paste it into the window (Replace “TableauWorkbook” with your object name if you didn’t name it “TableauWorkbook”):

Option Explicit

Private Sub Image1_Click()
Dim intCurrentSlide As Integer
On Error Resume Next
‘ Store the current slide index
intCurrentSlide = ActivePresentation.SlideShowWindow.View.Slide.SlideIndex
‘ Exit the Slide Show
‘ Minimize the PowerPoint Window
Application.ActiveWindow.WindowState = ppWindowMinimized
‘Open the embedded Tableau Workbook
Shapes(“TableauWorkbook”).OLEFormat.DoVerb 1
‘ Restart the Slide Show
‘ Navigate to the current slide
ActivePresentation.SlideShowWindow.View.GotoSlide intCurrentSlide
End Sub

6. Click “Properties” button from the “Developer” menu, and insert your image to “Picture”.


7. It is very likely that your image doesn’t fit the grey area. No panic! You can play with the properties options to get it right (by clicking “Properties” button from the “Developer” menu). What I did was to change the PictureAlignment to 0 and change the PictureSizeMode to 1.


8. Adjust your image position on the slide, and drag your object outside the slide so no one will see it in slide show mode. When you are in slide show mode, you can click the image to open the embedded Tableau workbook. (Note that it won’t work when you are in the normal editting mode.)

References: (I learnt this method from these two resources.)


Youtube video (language: Chinese):;_ylt=A2KLqIE78F5X3w0A2mn7w8QF;_ylu=X3oDMTByZWc0dGJtBHNlYwNzcgRzbGsDdmlkBHZ0aWQDBGdwb3MDMQ–?p=Embed+and+Open+Tableau+Workbooks+In+PowerPoint&vid=137b3c9c0871b0b19cf4306178abcfa9&

NOT recommended: Tableau workbook – PDF – powerpoint

P.S. I also tried exporting Tableau workbook to PDF and then using Adobe PDF Pro to save the exported PDF file as powerpoint, but it doesn’t work well for maps (maps will be a blurry gray area, unfortunately), and not to mention that all the interactivity is gone. Also, the alignment will be slightly changed, which is usually not what you want.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s