Live training: next batches coming soon. Join the waitlist:Waitlists open:Developer Training →Developer →Copilot Studio Training →Copilot Studio →

Export a Dataverse Table to Excel Using Power Automate (and Without a Flow)

Your manager wants the service request list in Excel every Monday. Clicking Export by hand works once, but it gets old fast.

In this tutorial, we’ll export dataverse table to excel using power automate, and also cover the built-in Export to Excel options for one-off exports.

The short answer: List rows reads the table, Select picks the columns with readable labels, Create CSV table builds the file, and SharePoint Create file saves it. Here’s the Select mapping that does the real work:

{
  "Request Number": "@item()?['cr85a_requestnumber']",
  "Subject": "@item()?['cr85a_subject']",
  "Status": "@item()?['cr85a_status@OData.Community.Display.V1.FormattedValue']",
  "Priority": "@item()?['cr85a_priority@OData.Community.Display.V1.FormattedValue']",
  "Due Date": "@if(empty(item()?['cr85a_duedate']), '', formatDateTime(item()?['cr85a_duedate'], 'yyyy-MM-dd'))"
}

It returns one object per row, with labels like Open and High instead of numbers.

How Do I Export a Dataverse Table to Excel Without a Flow?

For a one-time export, use a model-driven app. New to Dataverse? Read what Microsoft Dataverse is first.

Open the app, select the table in the left navigation, pick a view, then select … > Export to Excel on the command bar:

Model-driven app Export to Excel submenu with Open in Excel Online, Static Worksheet and Dynamic PivotTable

My SPGuides Service Request App showed five options for the All service requests view (11 rows):

OptionWhat you get
Open in Excel OnlineEdit in the browser; Save sends your changes back to Dataverse as an import
Static WorksheetA snapshot .xlsx of every page in the current view, up to 100,000 rows
Static Worksheet (Page only)Only the page on screen (50 rows by default)
Dynamic WorksheetA file you refresh in Excel with Data > Refresh All, up to 100,000 rows
Dynamic PivotTableData ready for a PivotTable; you insert it yourself with Insert > PivotTable

The file uses the view’s columns, order and sorting. To change the columns, create a Dataverse view with just the ones you need.

Makers have a second route: make.powerapps.com > Tables > Export > Export data. It produces a CSV download and needs the Environment Maker role.

Power Apps Tables page with the Export menu open and Export data highlighted

Microsoft notes this export isn’t included in the Power Apps Developer Plan and has a 12-minute limit. In my developer environment, the panel kept loading, so I used the flow below instead.

Export Dataverse Table to Excel Using Power Automate

A flow is the better choice when the export repeats. The Dataverse connector is Premium, so you need a premium Power Automate license. Our Power Automate tutorials hub covers the basics if this is your first flow.

  1. In make.powerautomate.com, pick your environment, then Create > Instant cloud flow with Manually trigger a flow.
  2. Add Microsoft Dataverse List rows, set Table name to Service Requests, and fill Select columns and Sort by as shown below.
  3. Add Select (Data Operation). Set From to the List rows value and switch Map to text mode for the mapping above.
  4. Add Create CSV table with From set to the Select output and Columns left on Automatic.
  5. Add SharePoint Create file: Site Address SPGuides, Folder Path /Shared Documents, plus the file name and content below.

List rows, Select columns and Sort by (the cr85a_ prefix comes from my publisher, so yours will differ):

cr85a_requestnumber,cr85a_subject,cr85a_status,cr85a_priority,cr85a_duedate
cr85a_requestnumber asc

Our guide to listing and counting Dataverse rows in Power Automate explains the other List rows options. Select’s From value:

@outputs('List_rows')?['body/value']
Select action Code view mapping Request Number to Due Date with FormattedValue properties

Create CSV table From, then the Create file name and content:

@body('Select')
service-requests-@{formatDateTime(utcNow(), 'yyyy-MM-dd')}.csv
@body('Create_CSV_table')

I also added a Compose named Rows exported at the end, so the run shows the count:

@length(body('Select'))

What the Exported File Looks Like

My run on 10/21/2026 succeeded. List rows took 0.1 seconds, Create file took 1 second, and Rows exported returned 11:

Export flow run history with List rows, Select, Create CSV table and Create file succeeded

Create CSV table output, a header plus one line per row:

Create CSV table output with the Request Number, Subject, Status, Priority and Due Date header

Here’s the full file, service-requests-2026-10-21.csv, as Excel reads it:

Request Number,Subject,Status,Priority,Due Date
,Printer Setup,Open,Medium,2026-10-27
,Laptop Setup,Open,Medium,2026-10-27
,Monitor Setup,Open,Medium,
REQ-1000,Hardware Repair,Closed,Medium,2026-10-12
REQ-1001,Login Issue,Closed,High,2026-10-05
REQ-1003,Password Reset,Open,High,2026-10-26
REQ-1004,Software Update,Open,Low,2026-10-30
REQ-1006,Network Issue,In Progress,High,2026-10-28
REQ-1007,Printer Jam,In Progress,Medium,2026-11-13
REQ-1008,Projector Setup,Open,Medium,
REQ-1009,Monitor Flicker,Open,Low,2026-11-13

The file landed in Shared Documents on /sites/SPGuides. Double-click it and Excel opens it as a normal sheet:

SharePoint Shared Documents showing service-requests-2026-10-21.csv and assets.csv

Notice the first three lines. Rows with a blank Request Number sort first in ascending order, so fill that column or sort by another one.

I ran the flow twice on the same day. The second run overwrote the file without an error, and SharePoint showed it as version 2.0 (532 bytes).

Why Do Choice Columns Export as Numbers?

A Dataverse choice column stores a number. Without the FormattedValue property, Status would land in Excel as 770700000-style values instead of Open or Closed.

Add @OData.Community.Display.V1.FormattedValue after the column name to get the label, like the Status and Priority lines in the mapping. Our post on Dataverse choice columns shows where the numbers come from.

Fix Dates That Shift by a Day

Dataverse returns date and time values in UTC, and formatDateTime() only reformats them. In my test, Laptop Setup shows 2026-10-27 in the CSV but 10/28/2026 12:00 AM in the maker grid.

Use convertFromUtc() so the file matches your team’s time zone. For US Eastern, replace the Due Date line with:

@if(empty(item()?['cr85a_duedate']), '', convertFromUtc(item()?['cr85a_duedate'], 'Eastern Standard Time', 'yyyy-MM-dd'))

Swap in Pacific Standard Time as needed. Keep the empty check: Monitor Setup and Projector Setup have no due date.

Need a Real .xlsx File Instead of CSV?

For a formatted workbook, the Excel Online (Business) connector can write rows, but the file and its table must already exist.

  • Create an .xlsx in SharePoint with a table whose headers match your Select keys.
  • Add Apply to each over body('Select').
  • Inside it, add Add a row into a table (Location, Document Library, File, Table, Row).

I didn’t test this route. Microsoft documents a 25 MB file limit and 100 calls per connection every 60 seconds, so it slows down on big tables.

Can You Export a Dataverse Table Schema to Excel?

Not with the export buttons. Export to Excel and Export data both export rows, not column definitions.

Microsoft’s developer sample Dump table definitions to a file writes table definitions to an XML file you can open in Excel.

To go the other way and build a table from a spreadsheet, see create a Dataverse table from Excel or CSV.

Common Problems When Exporting Dataverse Data

Only 5,000 rows exported. That’s the List rows default. Open the action’s Settings, turn on Pagination and set a Threshold up to 100,000.

Too many rows. Add a Filter rows query, such as this one that skips blank request numbers:

cr85a_requestnumber ne null

Lookup columns look like GUIDs. Use the lookup’s FormattedValue property the same way as the choice columns.

Need the data back in Dataverse? Reverse the process with our import CSV to Dataverse flow, which reads a CSV from the same library.

If you’re moving Dataverse data in and out of apps and flows, these guides help next:

Frequently Asked Questions

How do I export a Dataverse table to Excel?

In a model-driven app, open the table’s view and select Export to Excel, then pick Static Worksheet or Dynamic Worksheet. See Export data to Excel in Power Apps.

Can Power Automate export Dataverse data to Excel?

Yes. Use List rows, Select, Create CSV table and Create file to save a CSV that opens in Excel. For an .xlsx, add rows to an existing Excel table.

How many rows can I export from Dataverse to Excel?

Static and dynamic worksheets export up to 100,000 rows at a time. In a flow, List rows returns 5,000 rows unless you turn on pagination.

Why does my Dataverse export show numbers instead of choice labels?

Choice columns store numbers. Read the column’s @OData.Community.Display.V1.FormattedValue property in the Select action to export the label.

Can I export a Dataverse table schema to Excel?

Not with the export buttons, which export rows only. Microsoft’s developer sample writes table definitions to an XML file that Excel can open.