We’ve all heard this question before: How can I export a CSV in Tableau? To be honest, it’s quite the pain and way more difficult than it should be. There have always been a few options.
- Users can click on a specific sheet on a dashboard and then export that via the tiny button on the toolbar, but that has a few of its own problems: (1) You may not want to show the toolbar therefore making the export impossible, (2) People have to be trained to know exactly where to click to get it just right, and (3) You have no control over the output of the CSV.
- You can export a CSV using Tabcmd, but that’s not useful for the average dashboard consumer.
- You can add .csv to the end of the URL like http://[Tableau Server Location]/views/[Workbook Name]/[View Name].csv. But again, you never know what that output is going to look like.
Yesterday I learned an incredibly valuable trick that would make option 3 (adding .csv to the URL) export exactly the CSV you want. Let’s look at an example.
On this dashboard, notice how I added an Image object (I used an Excel icon) on the dashboard. I’ve floated it to the upper right and made it small. All the user has to do is click on that icon and they get a nice CSV. Go ahead, try it!
Did you try it? If you did, and you opened the CSV, you may have noticed this looks remarkably like the data that you would hope to get if you exported the data for the line chart. But I didn’t export the line chart at all. Here’s the trick.
- Add the image icon on the dashboard and place it wherever you like.
- Add a URL link to the image. In the dashboard above, the URL is http://public.tableausoftware.com/views/ExporttoCSV/Dashboard.csv.
This is where the magic sauce happens. When you add .csv to the end of a Tableau URL, Tableau will export the first sheet on the dashboard alphabetically. Yes, it’s that simple! And it’s totally undocumented. Special thanks to the one and only Tableau Jedi Mark Rueter for this tip! But note that Tableau orders upper case before lower case.
- What I did was float a sheet named AExport onto the dashboard. I changed the height to 1 and made everything white and transparent and chose Fit Entire View so that it would be inconspicuous. I had to name it with a capital A so that it would be the first sheet alphabetically on the dashboard.
The AExport worksheet started off like this:
Basically, you can put anything you want on this sheet. I then changed the transparency to 0% on the Color shelf, changed the default worksheet color to white, removed the row banding and removed the row and column dividers. The worksheet now looks like this:
That’s all there is to it! To recap:
- Create a worksheet that you want to export.
- Remove all of the formatting to make it look invisible.
- Be sure to give it a name that makes it first alphabetically on the dashboard.
- Place the worksheet on the dashboard, float it, make it fit the entire view, make it really small, move it somewhere inconspicuous.
- Add an image onto the dashboard, float it and add a URL to it that is the URL for the dashboard with .csv on the end.
This is a game changer!! Download the sample workbook here.