Azure Machine Learning, JavaScript Custom Functions, and Power BI Custom Visuals Further Expand Developers Capabilities with Excel

Today at Build, we announced a powerful set of capabilities to the Excel platform, offering developers, data scientists, and power users more opportunities to better work with data. Developers and data scientists can now to execute custom functions locally in JavaScript or with Microsoft Azure Machine Learning services to create their own powerful additions to Excel's catalog of formulas. Excel has enabled an out of the box bridge between business users and data science teams, to accelerate the digital transformation of businesses. With new support for Power BI Custom Visuals, developers will be able to build new kinds of data visualizations in Excel — giving users a much more diverse charting experience, right in Excel. Finally, Excel will integrate with Flow, allowing users sending data directly from a spreadsheet to a range of services. Read on to learn more.

Machine Learning and JavaScript custom functions for developers and data scientists.

Custom functions (similar to "user-defined functions" or "UDFs") are ways for developers to extend Excel's built-in set of formula functions. Users can create their own functions locally in JavaScript or with Machine Learning teams earning services. They can see and run these functions in Excel alongside built-in functions like =SUM or =VLOOKUP. The best part is that those same functions will work everywhere add-ins do: on PC, Mac, and iPad, and in Excel Online.

JavaScript custom functions

Office developers have been wanting to write JavaScript custom functions for many reasons, such as:

  • Calculate math operations, like whether a number is prime.
  • Bring information from the web, like a bank account balance.
  • Stream live data, like a stock price.

Starting today, developers can build JavaScript custom functions at https://aka.ms/customfunctions. They're already enabled for Windows, Mac, and Excel Online.

Using a custom function in Excel

Using a custom function in Excel

Machine Learning functions

Machine Learning functions can be created by AI developers, including data scientists and other experts. The functions are each based on a service that calculates or predicts values with a machine learning model. Once the model is deployed, the creators can enable it for anyone they choose. Within a company, administrators can configure who has access to which proprietary functions. Then, every time someone wants to run the function, they simply type in a cell, just like for any other Excel function. The function calls a live web service on the company’s Azure subscription and returns the result asynchronously.

There are many useful function types developers can enable with Machine Learning, such as:

  • Smart forecasting, like predicting the future revenue trend at a company based on time series data in Excel.
  • Classification problems for many Excel rows, like fraud detection from credit card transactions.
  • Any custom Python code, like a function to analyze text in cells.

 

Power BI Custom Visuals for developers and power users.

Custom Visuals enable developers to extend the existing chart set in Excel and Power BI using standard Open Source technologies, like JavaScript and D3. If you’ve built a cool visualization based on web technologies, and you’re wondering how to reach the millions of Excel users that insert charts daily, this feature is for you. Or, if you’re a Power BI developer who has already built custom visuals, your visual can now reach a much wider audience. That’s because the same technology powers the Custom Visuals feature in both products. You can write your visual once, and have it work in both places. 

Here are some examples of Custom Visuals that exist today:

Examples from rich third-party ecosystem of Power BI Custom Visuals in Excel.

Examples from rich third-party ecosystem of Power BI Custom Visuals in Excel.

Custom Visuals provide several key benefits that make them an appealing choice for data visualization development in Excel including:

  • Intuitive insertion experience: Custom Visuals live alongside existing charts in Excel. There are new entry points in the Chart ribbon, as well as a dedicated tab in the Insert Chart Insert dialog. The result is a familiar experience for users.
  • Tailored Office Store experience: Like Office add-Ins, Custom Visuals can be published to the Microsoft Store. Exploring new charting options in the store is a one-click tailored experience that lets users navigate directly to a set of Custom Visuals.
  • Intuitive UI controls: Excel provides common UI helping users connect visuals to their spreadsheet data, as well as configure properties. Providing this UI gives users consistent experience across all visuals. And having ready-made controls saves development time, allowing developers to stay focused on the visual content itself.
  • Enterprise ready: Not all Custom Visuals are meant for the public Microsoft Store. Enterprise developers can continue building visuals in-house for their specific line-of-business needs (such as, for example, an airline company building a custom “airplane visual” for displaying information about seat booking). Office 365 admins will have the ability to deploy visuals in the same way that Office add-ins are deployed, and those new chart types will appear in the Insert Chart Insert dialog automatically without any additional work needed by users.

Customs Visuals live with other Excel charts. Visuals acquired from the store, or those deployed by an Office 365 administrator, will automatically appear here. The store for Custom Visuals can also be launched from here  Note, these visuals are just examples of the types of visuals in the Office App Store.

Customs Visuals live with other Excel charts. Visuals acquired from the store, or those deployed by an Office 365 administrator, will automatically appear here. The store for Custom Visuals can also be launched from here  Note, these visuals are just examples of the types of visuals in the Office App Store.

  Excel provides a tailored view of the Office App Store that lets you focus on just the Custom Visuals. Note, the example visuals shown here are existing Custom Visuals for Power BI and may not all be available in Excel.  

Excel provides a tailored view of the Office App Store that lets you focus on just the Custom Visuals. Note, the example visuals shown here are existing Custom Visuals for Power BI and may not all be available in Excel.

  The task pane helps users connect their Custom Visuals to spreadsheet data, as well as configure settings on the visual.  The same task pane appears for all visuals, making the user experience easy and familiar for users across all visuals.  

The task pane helps users connect their Custom Visuals to spreadsheet data, as well as configure settings on the visual.  The same task pane appears for all visuals, making the user experience easy and familiar for users across all visuals.

The combination of a more tightly integrated experience together with a customized store and a consistent UX, will give data visualization developers maximum reach to their audience. For more information, visit API documentation for Custom Visuals to get started today writing visuals for Power BI. Visit the Custom Visuals Store to see what kinds of visuals are currently offered.

 

Flow integration with Excel

With this integration, users can create, manage, and most importantly run automated workflows on Excel tabular data. Via Flow, users will be able to send data from their spreadsheets hosted in SharePoint and OneDrive for Business to a wide range of services such as Teams, Dynamics 365, Visual Studio Online, Twitter, etc. The integration will first be shipped as an add-in in the Office Store and will become an in-the-box component later this year.

  Flow integration with Excel   

These new capabilities are the result of continuous innovation to make Excel a more flexible and intuitive data analysis tool and expand developer opportunities. To stay connected to Excel and its community, read Excel blog posts, and send us ideas and suggestions for the next version of Excel through our UserVoice. You can also follow Excel on Facebook and Twitter.

Availability

JS custom functions for Excel is available now in Developer Preview to Office 365 subscribers enrolled in the Office Insiders program. Azure Machine Learning functions and Power BI Custom Visuals will be rolling out in preview soon—stay posted @OfficeDev

Interested developers can sign up here to get updates as custom visuals becomes available.