# Find a row according to a column value — Google Sheets Botize method — `gspreadsheet.read_by_column` (action). Extract first row of a sheet where a certain column has a specific value, such as a number, a text, empty value, etc. - You can limit the search of the rows to a specific sheet or to all of them. - If no row matches, this step still answers: the Row found tag is set to no and the task carries on. To stop the task in that case, add the rule “Row found = yes” on the next step. If your task predates this change, that rule is already in place — we added it so the task would keep behaving as before. This is an action: it runs as a step of a task. Several can be chained. ## Fields you set The field's internal name, its type and the values it accepts. These fields accept `{{...}}` tags from earlier steps. - `mb_switch` *(boolean)* — Rules - `sheet_url` *(string)* — URL of your sheet document - `sheet` *(string)* — Sheet. Sheet id (gid) chosen from the list, the sheet name, or * to search in all sheets. Empty = first sheet. - `exclude_first_row` *(boolean)* — Exclude first row - `value_render_option` *(boolean)* — Fast! Improve speed by not processing spreadsheet formulas - `by_column` *(string)* — Only rows that have certain values ​​in this column. - `mb_outputvars_switch` *(boolean)* — Customize tags It also accepts repeatable field groups, with these prefixes: `mb_filters_*`, `filter_*`. These are composite components (buttons, filters, keyboards); the trailing number is set by the user as they are added. ## Output variables Data this step makes available. Reference them in later steps with the double-brace tag. - `{{found}}` *(boolean)* — Row found - `{{column_a}}` *(text)* — Column A - `{{column_b}}` *(text)* — Column B - `{{column_c}}` *(text)* — Column C - `{{column_d}}` *(text)* — Column D - `{{column_e}}` *(text)* — Column E - `{{column_f}}` *(text)* — Column F - `{{column_g}}` *(text)* — Column G - `{{column_h}}` *(text)* — Column H - `{{column_i}}` *(text)* — Column I - `{{column_j}}` *(text)* — Column J - `{{column_k}}` *(text)* — Column K - `{{column_l}}` *(text)* — Column L - `{{column_m}}` *(text)* — Column M - `{{column_n}}` *(text)* — Column N - `{{column_o}}` *(text)* — Column O - `{{column_p}}` *(text)* — Column P - `{{column_q}}` *(text)* — Column Q - `{{column_r}}` *(text)* — Column R - `{{column_s}}` *(text)* — Column S - `{{column_t}}` *(text)* — Column T - `{{column_u}}` *(text)* — Column U - `{{column_v}}` *(text)* — Column V - `{{column_w}}` *(text)* — Column W - `{{column_x}}` *(text)* — Column X - `{{column_y}}` *(text)* — Column Y - `{{column_z}}` *(text)* — Column Z - `{{row}}` *(int)* — Number of Row - `{{sheet}}` *(text)* — Sheet name ## Account Needs a connected Google Sheets account in Botize: https://botize.com/en/app/gspreadsheet/authenticate ## This app Every trigger and action for Google Sheets: https://botize.com/en/app/gspreadsheet.md ## How to build this An AI assistant (Claude, ChatGPT, Cursor…) can create and edit these tasks in the user's account through the Botize MCP connector, included in every plan: https://webhook.botize.es/mcp - Connection guide: https://botize.com/en/mcp - Agent map: https://botize.com/llms.txt - New account: https://botize.com/en/join (500 free operations, no card) --- Machine-readable summary for AI assistants. Human version: https://botize.com/en/method/gspreadsheet/read_by_column