← Al Davies, 250 High Street

Add Excel rows to a SharePoint list you already have

Short answer: the "From Excel" import creates a new list. It does not add rows to a list you already have. Paste the rows in grid view for a small batch, or use a Power Automate flow that reads an Excel table for a large or repeated one. Match your columns first. The 5,000-row limit Microsoft gives is for creating a new list from a table, not for adding rows.

Why the wizard does not do this

Microsoft says importing an Excel file creates a new list. Its words: "This method converts the table headings to columns in the list, and the rest of the data is imported as list items." It also says: "You can use tables with up to 5,000 rows to create a list." So if you run it a second time, you get a second list, not more rows in the first one.

Microsoft adds: "When you're using a site template, it is no longer possible within SharePoint to create a list from an Excel workbook." Its page says you can still export data to SharePoint from Excel. If you are starting from nothing, the wizard is the right tool. For the full move from a spreadsheet to a list, see "Replace a spreadsheet tracker with a SharePoint list". This guide is for the other case: the list already exists, people already use it, and you need to add more rows from Excel.

Pick a method

Exact menu and action names change over time, so exact names may differ on your screen.

Before you start: the pre-flight checklist

Check each one in your Excel file before you copy anything.

  1. Make a copy of the Excel file. Work in the copy. Keep the original untouched.
  2. Match the column names. Each Excel heading should match a column in the list. Open the list and write down its column names and types.
  3. Match the column types. Microsoft says all values must match their column type. A date column needs real dates. A number column needs numbers. Text such as "TBD" in a date column will cause trouble.
  4. Fill the Title column. If your Excel file has no Title column, put a short unique label in each row, such as an order number or a name.
  5. Check required columns. Microsoft says you must enter a value in any column that has an asterisk in the list. Rows with blanks there will not go in.
  6. Check Choice columns. The words in Excel must match the choices in the list exactly. If your Choice values are numbered, like 1 High, 2 Medium, 3 Low, copy the numbers into Excel too.
  7. Check Person columns. A Person column in the list needs a real person. Use the work email address or the full name exactly as it shows in your organization. See the notes under Method 2.
  8. Delete blank rows. A blank row can become a blank item.
  9. Check for rows that are already in the list. See the duplicates section below.

Method 1. Paste the rows in grid view

This is the method Microsoft documents on its support page for adding list items. Steps follow it. Exact names may differ.

  1. In Excel, select the rows you want. Select only the cells, not the headings. Copy them.
  2. Open your list.
  3. On the command bar, choose Edit in grid view. If you do not see it, make sure you are not already editing the list and have not selected any items.
  4. Choose Add new item.
  5. Put the cursor in the first blank column of the new row and paste. Microsoft says this starts the paste.
  6. Look at the rows that appear. Check dates, names and choices.
  7. When you are done, choose Exit grid view.

Notes from the same page:

If the paste lands in one cell, click outside the grid, then click the first blank cell again before you paste. Our advice, not a Microsoft rule.

Paste five rows first. If those look right, paste the rest.

Method 2. A Power Automate flow

Use this when you have many rows, or when the same file comes in again and again. The flow reads rows from an Excel table and creates one list item for each row. Microsoft documents the actions on its connector pages. Exact names may differ.

What you need:

The steps:

  1. In Power Automate, start a new flow you run by hand (an instant flow). Use a manual trigger while you test.
  2. Add the Excel Online (Business) action called List rows present in a table. Choose the location, the library, the file and the table.
  3. Turn on pagination for that action. Microsoft says it returns up to 256 rows by default, and that you turn on pagination to get all rows. Set the threshold higher than your row count.
  4. Add the SharePoint action called Create item. Choose the site address and the list name.
  5. Place the Create item action inside the loop that Power Automate adds around the rows. It runs once for every row.
  6. Map each list column to the matching Excel column from the dynamic content. Map Title first.
  7. Save the flow. Run it on a copy of the file and a test list.
  8. Open the test list and check the items. Then point the flow at the real list and run it again.

Excel column types and list column types. Match them before you map.

Our advice, not a Microsoft rule: confirm each pairing on five test rows before the full load.

Dates. The List rows present in a table action has an optional DateTime Format setting. Excel can store a date as a plain number, so look at what the flow brings in. If a date looks wrong in your test list, set the DateTime Format option and run the test again.

People. The SharePoint connector has an action called Resolve person. Microsoft says it returns a single matching user so the value can go into a Person column. If there are no matches or more than one match, the action errors. So a name that two people share, or a misspelled one, will stop the run. Use email addresses when you can.

Limits on the Excel side, from Microsoft's connector page:

Duplicate check inside the flow (Our advice, not a Microsoft rule): before Create item, add a SharePoint Get items action with a filter on your unique ID column set to the ID in the current Excel row. Then add a Condition that checks whether Get items returned no rows. Put Create item in the Yes branch. Test on a copy first.

Do not skip the duplicates check

Neither method knows which rows are already in the list. Paste the same rows twice and you get the rows twice. Run the flow twice and the same thing happens.

Add a column to the Excel file that says which rows are new, and copy only those. Or give the list a column for a unique ID (an order number, an invoice number) and sort by it after the first load, so repeats are easy to see. For more on keeping repeats out of a shared tracker, see "Stop duplicate entries in a shared spreadsheet".

Test with a copy first

  1. Create a new test list with the same columns.
  2. Load five rows into the test list.
  3. Check each column type: dates, people, choices, numbers.
  4. Load the full batch into the test list.
  5. Compare the row count in Excel to the item count in the list.
  6. Only then load the real list.

If something goes wrong in the real list, you can sort by the Created column and delete the bad items. Do that with care, and tell the team first.

What to avoid

Honest limits

Grid view paste is quick, but it is manual. A flow is repeatable, but it takes time to build and test, and it needs the right plan and permissions. Neither one removes the need to clean the data first. If your rows come in every week from people filling out Excel, a form that writes straight to the list may be a better long-term choice than a repeat import.

When to get help

You can build all of this yourself in Microsoft 365. If you would rather have it built and tested for your team, I do that. A tracker like this is a fixed price: $5,000 for one, built in 2 weeks. See "What a SharePoint tracker costs to build". Bring one example of the problem to a free call.

Tell me what's still manual

I am Al Davies. I run 250 High Street LLC and build SharePoint trackers and Power Automate flows for operations teams. I work remotely. The first call is free, and I will not try to sell you anything.

See trackers I built: Tools I built

FAQ

Can the Excel import add rows to an existing list?

No. Microsoft describes it as a way to create a list from a spreadsheet. To add to a list you already have, paste rows in grid view or use a Power Automate flow.

How do I import items from Excel to an existing SharePoint list?

Paste the rows in grid view for a small batch, or use a flow with List rows present in a table and Create item for a large one. Test on a copy first.

How many rows can Excel import into a SharePoint list?

Microsoft says: "You can use tables with up to 5,000 rows to create a list." That limit is for creating a new list from a spreadsheet.

Why did only 256 rows load?

Microsoft says List rows present in a table returns up to 256 rows by default. Turn on pagination in the action settings to get all rows.

What happens if I load the same rows twice?

You get every row twice. Neither method checks for repeats. Check for duplicates before you load, and test with a copy first.

Sources