Leverage Analyze in Excel for your Power Pivot model

Microsoft recently released the Analyze in Excel feature, which allows you to connect an Excel pivot table to a data model published on Power BI. I think/hope that Microsoft will enhance this feature to extend its current limits. For example, it does not allow you to connect a live model based on an on-premises SSAS Tabular server through Power BI Enterprise gateway. However, this feature is also very interesting to any Power Pivot user.

When you have a data model in Power Pivot, you have to create all the reports within the same Excel workbook. At the end, you have a single file containing everything: the data model, the data, and the reports. This is fine at the beginning, but as soon as you create more complex data models, you increase the number of reports – in a word, when the model grows – then you face a few problems. Any edit operation of a power pivot model could require time to refresh pivot tables and measures. The editing experience becomes slower. You cannot separate the data from the reports in two different files to split maintenance responsibility. If you created several reports based on the same power pivot data model, you already know this story. It would be nice to split the data model (and the data) from the reports. Now you can, using Power BI and the Analyze in Excel feature. Power BI is your best friend here.

This is the list of the operations you have to do:

  1. Download and install Power BI Desktop – you have to be a local administrator of your machine to do that, but this is the only step requiring such a permission.
  2. Open Power BI Desktop.
  3. Import the Power Pivot data model in Power BI Desktop using the feature File / Import / Excel Workbook Contents, and then schedule a refresh if you need that.
    import-from-excel
  4. Publish the Power BI Desktop data model in Power BI service
  5. Open the data model from Excel using the Analyze In Excel feature on Power BI service
  6. Create the same reports you had in the original Excel file using new pivot tables.

At the end, you will have an Excel file connected to an external data model, which can refresh automatically through a schedule you control. Before Power BI, you had to use Power Pivot for SharePoint to do that.

You might ask why I am not suggesting to publish the Power Pivot data model straight to Power BI service, without creating a Power BI Desktop file to do that. The reason is that it is much simpler to work with two separate files, and the environment in Power BI Desktop provides you the ability to use bidirectional filter in relationships, a feature that is not available in Power Pivot for Excel. However, this approach requires you to plan in advance the moment you “detach” the data model from Excel if you defined synonyms for Q&A.

At the moment of writing, you cannot modify synonyms in Power BI, neither in Power BI desktop nor in Power BI service. However, if you created synonyms in Excel, they are kept in the data model in Power BI Desktop, even if you cannot modify them (by now, I hope!). If you want to modify the synonyms for Q&A in the Excel file, you have to repeat the cycle and import the Power Pivot data model again in Power BI, losing the changes you might have done before. I am not saying that this way of working should be suggested to anyone, but you might be interested if you are willing to pay the maintenance cost of this solution, which already provides you the best of the two worlds: define synonyms for Q&A in Power Pivot, and create relationships with bidirectional filter in Power BI Desktop. When editing synonyms will be possible also in Power BI Desktop and/or in Power BI Service, this article will become immediately obsolete.

At the moment, you should consider that changing the synonyms in Power Pivot will require you to overwrite the changes you applied to the data model in Power BI Desktop. Thus, you might want to apply any change to the data model in Power Pivot (for example, adding/removing columns/measures) instead of using Power BI. You might just apply bidirectional filter on Power BI, but you will have to repeat that every time you import the data model in Power BI Desktop from Excel again. And you would lose any report designed in Power BI Desktop doing that, so you should edit reports in Power BI service only… Editing synonyms in Power BI will definitely streamline the process, when it will be possible.

One feature that I would like for this scenario is being able to change automatically all the connections of the pivot tables based on a Power Pivot data model, replacing the correspondent connection string in the ODC file returned by Power BI clicking on Analyze In Excel. This is also a long awaited feature for those who want to publish a Power Pivot data model to an on-premises Analysis Services Tabular server, and it is not easy to manipulate the file so that you can refactor the connection string in all the queries of the dataset. I am sure that this would improve the productivity of Excel users facing this issue, and it will increase the number of users or Power BI service.

Conclusion

You can use synonyms today in Q&A, but you have to create and edit the model in Power Pivot, exporting it to Power BI only to edit relationships using types not available in Power Pivot (such as the bidirectional filter).