Smartsheet Bulk Formula Updater
Free to download on every platform. Comes pre-installed on BotFone, BotPad and BotFlip — with extra free apps included.
About this app
WHAT IT DOES
Smartsheet Bulk Formula Updater is a spreadsheet productivity tool that streamlines the process of applying formulas to multiple rows in a Smartsheet sheet. Instead of manually clicking each cell, typing or pasting a formula, and pressing Enter—a process that can be tedious and error-prone when managing many rows—this script automates the entire workflow. It scans the current Smartsheet sheet view, identifies visible rows with their primary column values, and presents them as a scrollable checklist. You can select individual rows, use Select All/Deselect All toggles, choose a target column from a dynamically detected list of columns, define a formula template with placeholders ({{row}} for row number, {{col}} for column name), and apply the formula to all selected rows in configurable batches. The tool handles the complete interaction sequence: clicking the target cell, entering edit mode, setting the formula (with row-specific adjustments), and saving. Real-time progress updates show how many rows have been updated, and the list automatically refreshes after completion. This is ideal for project managers, data analysts, and anyone who needs to apply consistent formulas across large Smartsheet sheets.
WHERE IT RUNS
This script operates exclusively on Smartsheet (*.smartsheet.com/*) as a userscript injected through the BotGentz extension. It runs within the context of your current browser tab and cannot access other tabs, bookmarks, history, or downloads. The script reads the page DOM to identify rows and columns using Smartsheet's selectors (.row, .grid-row, .cell), extracts primary values, detects column names from headers, and interacts with Smartsheet's native UI controls—cell clicks, inline editing, and Enter key events—to apply formulas. All operations occur locally in your browser; no data is sent to external servers.
HOW TO USE
1. Open any Smartsheet sheet view where you need to apply formulas to multiple rows.
2. Click the BotGentz extension icon and select "Smartsheet Bulk Formula Updater" from the script list.
3. The panel opens on the right side of the page. It automatically scans the current sheet for rows.
4. Review the displayed rows, showing the primary column value for each row.
5. Select your target column from the dropdown (columns are auto-detected from the sheet header).
6. Enter your formula template in the "Formula template" field. Use {{row}} for the row number and {{col}} for the column name. Example: "=SUM([{{col}}]{{row}})".
7. Adjust the "Batch size" number (default 3) to control how many rows are updated per batch.
8. Toggle "Confirm before each batch" if you want a confirmation popup before each batch executes.
9. Check the boxes next to rows you wish to update. Use "Select All" or "Deselect All" for quick selection.
10. Click "Update Formulas" to begin. The script processes rows in batches, shows progress, and handles errors.
11. After completion, the row list automatically refreshes showing your updated data.
WHY IT WORKS WHERE OTHERS FAIL
Many Smartsheet automation tools fail because they attempt to call Smartsheet's internal API endpoints or rely on brittle DOM selectors that change with every Smartsheet UI update. This script takes a resilient approach: it locates the actual interactive DOM elements Smartsheet renders—the target cell, the input field that appears in edit mode, and the Enter key event that commits the formula—and triggers native click events and value changes on them, exactly as a human would. When updating a formula, the script clicks the cell to enter edit mode, waits for the input field to appear, sets the formula using both the native value setter and dispatches "input" and "change" events (ensuring Smartsheet's React/JavaScript UI registers the update), and then triggers Enter to save. The script intelligently replaces placeholders in the formula template with the actual row number and column name, making it easy to create relative references. Between operations, the script introduces controlled delays (300ms between actions and 500ms between batches) to mimic human interaction speed and avoid triggering Smartsheet's rate limiting.
THE PANEL
The script uses BotGentz's BGPanel system, which provides a floating, draggable panel on the right side of your screen. Drag the panel by its header to reposition it anywhere on the page—the panel remembers its position per site and snaps to the nearest edge when released. Click the minimize button to collapse the panel to a small floating bubble; click the bubble to expand it back. Resize the panel vertically by dragging its bottom edge. Press the Escape key to close the panel entirely. All panel state (position, collapsed/expanded) is persisted locally using GM_setValue, so your preferences survive page reloads.
PLEASE NOTE
This userscript requires the free BotGentz browser extension—it is not a standalone application. Smartsheet periodically updates its website layout and UI components; if the script stops working, an updated version may be released. The script applies formulas to the selected column for the selected rows. Ensure your formula template is valid Smartsheet syntax. This script does not store, transmit, or process any of your Smartsheet data outside your local browser. It does not access your password, hidden inputs, or file inputs. All formula updates are performed through Smartsheet's own authenticated session using the official user interface. Use responsibly and verify formula syntax before applying to multiple rows.