The Scenario
The quarterly executive review is in two days. The PMO director needs a snapshot of every task across the three active Asana projects — name, assignee, due date, completion status, section — in a single Google Sheet, formatted so she can build pivot tables without touching the raw data.
The last person who did this pulled each project manually: export CSV, open in Sheets, paste, fix the headers, repeat three times, then spend another 30 minutes reconciling the formats because each export used a slightly different date style.
The bad version:
- Open Asana project 1, export CSV, download, import to Sheets.
- Notice the exported columns don't match what the PMO director's template expects — rename them manually.
- Do the same for projects 2 and 3, paste each export into a different tab, then write a formula to consolidate them into the master sheet.
- Discover that one project's tasks exported without the section column because that project uses a different layout.
This is the kind of work that looks like "just data prep" until you're an hour into it on a Thursday afternoon with a review slide deck waiting.
The Easy Way: One Prompt in SheetXAI
SheetXAI is an AI agent inside your Google Sheet. It reads the project GIDs from your sheet, queries each Asana project in turn, and writes all the task data into a single destination tab — no CSVs, no format reconciliation.
Fetch all tasks from Asana projects listed in column A of the 'Projects' sheet and write each task's name, assignee, due date, completion status, and section into the 'Tasks' sheet, one row per task.
What You Get
- One row per task across all listed Asana projects
- Columns: task name, assignee email, due date (ISO format), completion status (true/false), section name
- A "Project Name" column prepended so you can filter or pivot by project
- Existing data in the 'Tasks' sheet is replaced, not appended — so re-running it always gives you a clean snapshot
What If the Data Is Not Quite Ready
You need to include custom field values in the export
Fetch all tasks from Asana projects in column A of the 'Projects' sheet. For each task, write name, assignee, due date, section, and the value of the custom field "Priority" into the 'Tasks' sheet. If a task doesn't have the Priority field, write "N/A" in that column.
You only want incomplete tasks
Pull every incomplete task from each Asana project listed in column A of the 'Projects' sheet. Write task name, assignee email, due_on, section, and project name into the 'Tasks' sheet starting at row 2. Skip any completed tasks.
Tasks need to be filtered by due date range
Fetch all tasks from Asana projects in column A of the 'Projects' sheet where the due date falls between the dates in cells D1 and D2 of this sheet. Write task name, assignee, due date, section, and project into the 'Tasks' sheet.
Pull tasks, flag overdue items, and summarize by assignee in one prompt
Fetch all incomplete tasks from Asana projects listed in column A of the 'Projects' sheet. Write them into the 'Tasks' sheet with: task name, assignee, due date, section, project name. In column F, write "Overdue" if the due date is before today, otherwise leave blank. Then write a summary table to the 'Summary' sheet showing each assignee's total task count and overdue count.
One prompt that moves the data, applies logic, and generates the summary your executive wants to see.
Try It
Get the 7-day free trial of SheetXAI and open a sheet with your Asana project GIDs in column A — ask SheetXAI to pull all task data into a reporting tab. You can also explore how to export status updates across projects, or see the full list of Asana workflows in the hub overview.
