Docs

RunMacro Documentation

Create your first robot, then go further as needed.

Clear step-by-step guides to create, run, and improve robots for repetitive computer work.

Docs File Data Source - Get Row
📥 File

Get a data row from CSV/Excel/Google Sheet in RunMacro

The Data Source - Get Row command reads a row from a data source (CSV, TXT, Excel, or Google Sheet via Apps Script) and assigns columns to variables.

Prerequisites#

  • Add Data Source - Get Row to the macro.
  • Prepare the data or target that Data Source - Get Row will use.

Supported modes#

  • RunMacro Runner

What it does#

The Data Source - Get Row command reads a row from a data source (CSV, TXT, Excel, or Google Sheet via Apps Script) and assigns columns to variables. It can take the first, a random, or the next unprocessed row; and branch IF/ELSE on whether data exists.

Screenshots & video#

RunMacro Data Source - Get Row command configuration dialog showing parameter fields
Configuration dialog and parameter fields for the Data Source - Get Row command in RunMacro.

When to use it#

  • Process an account/data list row by row.
  • Take the next unprocessed row (by a status column) to run in order.
  • Load Google Sheet data into variables.

When not to use it#

  • Do not use it when multiple runners must claim one row atomically.

Configuration steps#

  1. Add a File › Data Source - Get Row command.
  2. Choose the source (CSV/TXT/Excel/Google Sheet) and the file/URL.
  3. Choose the mode: first / random / next unprocessed.
  4. (Optional) set a variable prefix, status column, IF/ELSE labels. Save.

Every option explained#

Source + File/URL + Sheet#

The source type and data location; for Excel/Sheet you can specify the sheet name.

Mode (first/random/next unmarked)#

How to pick a row. "Next unmarked" uses a status column and an unused value.

Has header row#

Whether the first row is a header (used as variable names) or data.

Variable prefix + TXT variable#

A prefix added to column-based variable names; for TXT, the variable holding the whole line.

Status column + mark processing#

The status-tracking column; can auto-mark the fetched row as "processing".

IF/ELSE labels + no-data action#

Data found jumps IF, none jumps ELSE; when no data, continue or stop.

Expected result#

After execution, Data Source - Get Row completes the described action and makes its result available to the next step.

Real example#

Example: get the next unprocessed CSV row#

  1. Data Source Get Row, CSV source, Next-unmarked mode, status column status.
  2. Columns are assigned to variables (e.g. {email}).
  3. After processing, use "Mark Row" to write done.

Limitations and failure cases#

  • Exhaustion, unmatched filters, or source changes can return empty; reading a row does not lock it for another runner.

Tips & common mistakes#

The trio Get Row → process → Mark Row forms a clean list-processing loop.

Verification details#

  • commands/data_source.py
RunMacro robot

Robots do the work. Your time is yours.

Create a robot in minutes, no coding needed. Reliable execution, remote management, transparent costs — and you always stay in control.