GSPro: Advanced Google Sheets Extension
Version: 2.2
Category: Extension
Visibility: Non-Visible
Developer: Idriss (using Fast-CLI)
Size: 87kb
Date: March 07, 2025
Update: March 11, 2025
πΉ Overview
GSPro is a robust extension for Kodular that integrates seamlessly with Google Sheets via a Google Apps Script Web App. It provides over 50 functions for managing sheets, data, formatting, comments, and more. Whether you need to append data, format cells, or export sheets as PDFs, GSPro has you covered!
β Key Features
- π Data Operations: Append, update, retrieve, and delete rows, columns, and cells.
- π Sheet Management: Create, delete, and list sheets.
- π¨ Formatting: Style rows and cells with colors, fonts, and conditional formatting.
- π¬ Comments: Add, read, and remove cell comments.
- π οΈ Advanced Tools: Filters, frozen rows/columns, image insertion, PDF export.
- π Search & Replace: Find values and replace text in ranges.
- π§ Sharing: Share spreadsheets with specific roles (reader, writer, owner).
- π‘ Network Check: Verify connectivity before operations.
π οΈ Functions & Usage
Core Properties:
- SpreadsheetId(String id): Sets the Google Sheet ID.
- SheetName(String name): Specifies the sheet name (default: "Sheet1").
- WebAppUrl(String url): Sets the Google Apps Script Web App URL.
Setup & Connectivity:
- TestConnection(): Tests the Web App connection.
- ConnectionTested(boolean success, String message): Connection test result.
Data Management:
- AppendToSheet(Object data): Adds a row of data as a list.
- DataAdded(boolean success, String message): Data append result.
- UpdateRow(int rowNumber, Object valuesList): Updates an entire row.
- RowUpdated(boolean success, String message): Row update result.
- UpdateCell(int rowNumber, int columnNumber, String value): Updates a specific cell.
- CellUpdated(boolean success, String message): Cell update result.
- GetRowData(int rowNumber): Fetches data from a row.
- RowDataRetrieved(boolean success, YailList rowData, String message): Row data result.
- GetColumnData(int columnNumber): Fetches data from a column.
- ColumnDataRetrieved(boolean success, YailList columnData, String message): Column data result.
- GetCell(int rowNumber, int columnNumber): Gets a cellβs value.
- CellValueRetrieved(boolean success, String cellValue, String message): Cell value result.
- GetSheetAllData(): Retrieves all sheet data.
- SheetAllDataRetrieved(boolean success, YailList sheetData, int maxRows, int maxColumns, String message): Full sheet data result.
- GetMultipleColumns(Object columnNumbers, int maxRows): Fetches multiple columns.
- MultipleColumnsRetrieved(boolean success, YailList columnsData, String message): Multiple columns result.
- GetRangeData(String fromCell, String toCell): Fetches data from a range.
- RangeDataRetrieved(boolean success, YailList rangeData, String message): Range data result.
- DeleteRow(int rowNumber): Deletes a row.
- RowDeleted(boolean success, String message): Row deletion result.
- DeleteColumn(int columnNumber): Deletes a column.
- ColumnDeleted(boolean success, String message): Column deletion result.
Sheet Management:
- CreateNewSheet(String newSheetName): Creates a new sheet.
- SheetCreated(boolean success, String message): Sheet creation result.
- DeleteSheet(String sheetNameToDelete): Deletes a sheet.
- SheetDeleted(boolean success, String message): Sheet deletion result.
- IsSheetNameExists(String checkSheetName): Checks if a sheet exists.
- SheetNameExists(boolean exists, String message): Sheet existence result.
- GetAllSheetNames(): Lists all sheet names.
- GotSheetNames(boolean success, YailList sheetNames, String message): Sheet names result.
Formatting & Styling:
- CreateColumns(Object columnTitles): Sets column headers.
- ColumnsCreated(boolean success, String message): Column titles result.
- FormatRow(int rowNumber, String textColor, String bgColor, int fontSize, boolean isBold, boolean isItalic): Formats a row.
- RowFormatted(boolean success, String message): Row format result.
- FormatCell(int rowNumber, int columnNumber, String textColor, String bgColor, int fontSize, boolean isBold, boolean isItalic): Formats a cell.
- CellFormatted(boolean success, String message): Cell format result.
- ColorPicker(String colorName): Converts color names to HEX codes.
- AddFilter(String range): Adds a filter to a range.
- FilterAdded(boolean success, String message): Filter addition result.
- FreezeRows(int count): Freezes rows.
- RowsFrozen(boolean success, String message): Rows freeze result.
- FreezeColumns(int count): Freezes columns.
- ColumnsFrozen(boolean success, String message): Columns freeze result.
- AddConditionalFormat(String range, String conditionType, String conditionValue, String bgColor): Adds conditional formatting.
- ConditionalFormatAdded(boolean success, String message): Conditional formatting result.

Comments & Search:
- AddComment(int rowNumber, int columnNumber, String commentText): Adds a comment.
- CommentAdded(boolean success, String message): Comment addition result.
- ReadComment(int rowNumber, int columnNumber): Reads a comment.
- CommentRead(boolean success, String commentText, String message): Comment read result.
- RemoveComment(int rowNumber, int columnNumber): Removes a comment.
- CommentRemoved(boolean success, String message): Comment removal result.
- SearchValue(String searchValue): Finds a valueβs position.
- ValueFound(boolean success, int rowNumber, int columnNumber, String message): Search result.
- FindRowByUniqueColumn(int columnNumber, String uniqueValue): Finds a row by unique value.
- RowFoundByUniqueColumn(boolean success, int rowNumber, String message): Unique value row result.
- FindAndReplace(String searchText, String replaceText, String range): Replaces text in a range.
- TextReplaced(boolean success, int count, String message): Text replacement result.
Advanced Features:
- GetColumnNames(): Retrieves column names from the first row.
- GotColumnNames(YailList columnNames, int length, String message): Column names result.
- GetFilledRowsCount(): Gets the number of filled rows.
- FilledRowsCountRetrieved(boolean success, int count, String message): Filled rows count result.
- GetFilledColumnsCount(): Gets the number of filled columns.
- FilledColumnsCountRetrieved(boolean success, int count, String message): Filled columns count result.
- InsertImage(int rowNumber, int columnNumber, String imageUrl): Inserts an image.
- ImageInserted(boolean success, String message): Image insertion result.
- ExportAsPDF(): Exports the sheet as a PDF.
- PDFExported(boolean success, String downloadUrl, String message): PDF export result.
- ShareSpreadsheet(String email, SheetRole role): Shares the spreadsheet.
- SpreadsheetShared(boolean success, String message): Spreadsheet sharing result.
- SetFormula(int rowNumber, int columnNumber, String formula): Sets a formula.
- FormulaSet(boolean success, String message): Formula set result.
- GetFormula(int rowNumber, int columnNumber): Retrieves a formula.
- FormulaRetrieved(boolean success, String formula, String message): Formula retrieval result.
π How It Works (Step-by-Step Guide)
- Step 1: Import the GSPro extension (.AIX) into your Kodular project.
- Step 2: Set
SpreadsheetId
,SheetName
, andWebAppUrl
. - Step 3: Test connectivity with
TestConnection()
. - Step 4: Use functions like
AppendToSheet()
orGetSheetAllData()
to manage data. - Step 5: Handle responses with events like
DataAdded()
orErrorOccurred()
.
π Events & Error Handling
Error Handling Event:
- ErrorOccurred(String errorMessage): Triggered on any operation failure.
π οΈ Troubleshooting & Common Issues
β οΈ "Check network or WebAppUrl" Error?β Verify internet connectivity and the correctness of
WebAppUrl
. βError preparing requestβ?
β Check that SpreadsheetId
and SheetName
are set correctly.
No Data Returned?
β Ensure the sheet exists and contains data before fetching.
PDF Export Fails?
β Confirm the Web App script has export permissions enabled.
π Why Use This Extension?
β Comprehensive Google Sheets Integration with over 50 functions. β Advanced Formatting & Tools like comments, filters, and PDF export. β Easy to Use with clear events and error handling. β Versatile Features for data management and sharing.π Over 50 Blocks π
π₯ Download & Documentation
π Extension (.AIX): v2.0Download
New Update: version 2.1
New Update: version 2.2
2.2
- Add Offline Mode support for seamless data operations without internet
- Update Export feature to support PDF, Excel, and CSV with optional folder saving in Google Drive
- Add performance optimizations for faster processing and reduced resource usage
FREE Extension (.AIX): v1.0
com.idriss.gsmax.aix (63.5 KB)
Google Apps Script Code:
GoogleSheetScript.txt (56.6 KB)
Version: 2.2
Category: Extension
Visibility: Non-Visible
Developer: Idriss (using Fast-CLI)
Size: 87kb
Date: March 07, 2025
Update: March 11, 2025
Extension Support for Latest Kodular Update
π Enjoy using GSPro! Share your feedback & suggestions below. ππ° Purchase GSPro Extension: Get the full version of GSPro for just 3 USD via PayPal. Click the link below to make your payment:
Pay Now via PayPal
π© After Payment: Contact me on Telegram or via email to receive your activation key. Provide your payment details for verification.
Telegram: