Skill Details
Back to Skills

/excel-online

by mrgoodb

Read and write Excel files via Microsoft Graph API. Manage workbooks, worksheets, and cells in OneDrive/SharePoint.

View on GitHub

Excel Online (Microsoft Graph)

Excel automation via Microsoft 365.

Environment

export MICROSOFT_ACCESS_TOKEN="xxxxxxxxxx"

List Workbooks in OneDrive

curl "https://graph.microsoft.com/v1.0/me/drive/root/search(q='.xlsx')" \
  -H "Authorization: Bearer $MICROSOFT_ACCESS_TOKEN"

Get Worksheets

curl "https://graph.microsoft.com/v1.0/me/drive/items/{item-id}/workbook/worksheets" \
  -H "Authorization: Bearer $MICROSOFT_ACCESS_TOKEN"

Read Range

curl "https://graph.microsoft.com/v1.0/me/drive/items/{item-id}/workbook/worksheets/{sheet-name}/range(address='A1:D10')" \
  -H "Authorization: Bearer $MICROSOFT_ACCESS_TOKEN"

Write to Range

curl -X PATCH "https://graph.microsoft.com/v1.0/me/drive/items/{item-id}/workbook/worksheets/{sheet-name}/range(address='A1:B2')" \
  -H "Authorization: Bearer $MICROSOFT_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"values": [["Name", "Value"], ["Test", 123]]}'

Add Worksheet

curl -X POST "https://graph.microsoft.com/v1.0/me/drive/items/{item-id}/workbook/worksheets" \
  -H "Authorization: Bearer $MICROSOFT_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"name": "NewSheet"}'

Create Table

curl -X POST "https://graph.microsoft.com/v1.0/me/drive/items/{item-id}/workbook/worksheets/{sheet-name}/tables/add" \
  -H "Authorization: Bearer $MICROSOFT_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"address": "A1:C5", "hasHeaders": true}'

Run Formula

curl -X POST "https://graph.microsoft.com/v1.0/me/drive/items/{item-id}/workbook/functions/sum" \
  -H "Authorization: Bearer $MICROSOFT_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"values": [[1, 2, 3, 4, 5]]}'

Links