neoSheet
Version: 1.1
Category: Spreadsheet Integration
Library: Jspreadsheet CE
neoSheet brings full-featured spreadsheet functionality to your VisualNEO Web applications, powered by the open-source Jspreadsheet CE library.
It allows you to create interactive, Excel-like tables directly inside your app, complete with multiple worksheets, formulas, column and row operations, cell styling, and user-friendly editing tools—all handled entirely within the browser.
Designed for both simplicity and depth, neoSheet supports everything from lightweight data grids to complex multi-sheet dashboards. You can programmatically manipulate data, customize columns and rows, define custom formulas, and control every aspect of the spreadsheet's behavior, including user permissions and interface elements such as toolbars, tabs, and context menus.
Key Features
- Fully interactive spreadsheet engine integrated into VisualNEO Web.
- Supports multiple worksheets, tabs, and pagination.
- Create, edit, sort, and format data programmatically or via UI.
- Full control over rows, columns, cells, and styles.
- Define custom formulas using JavaScript expressions.
- Import/export complete configurations, data, and structure.
- Enable or restrict user actions (insert, delete, resize, rename, etc.).
- Get and set data, cell values, formatting, and comments dynamically.
- Undo/redo support and action history management.
- Download spreadsheet contents as CSV files.
Typical Use Cases
- Building data entry forms, inventory lists, or contact databases.
- Developing financial, academic, or project-tracking tools.
- Implementing interactive dashboards or dynamic reports.
- Creating multi-user data grids in SaaS or educational apps.
- Managing tabular data imported/exported from external sources
neoSheetInit
|
Purpose: |
Initialize a Jspreadsheet sheet with size, toolbar, tabs, data, columns and context menu |
|
Category: |
neoSheet |
|
Syntax: |
neoSheetInit "objId" ncolumns nrows toolbar tabs contextMenu thepagination "dataVarOrJson" "columnsVarOrJson" columnDrag columnResize columnSorting allowRenameColumn allowDeleteColumn allowInsertColumn allowInsertRow allowDeleteRow rowResize callback
objId Container object ncolumns Number of columns nrows Number of rows toolbar Show toolbar? tabs Show tabs? contextMenu Enable right-click context menu? thepagination Rows per page (leave empty for no pagination) dataVarOrJson Data array JSON or variable columnsVarOrJson Column definitions JSON or variable columnDrag Allow column dragging? columnResize Allow column resizing? columnSorting Allow column sorting? allowRenameColumn Allow renaming columns? allowDeleteColumn Allow deleting columns? allowInsertColumn Allow inserting columns? allowInsertRow Allow inserting rows? allowDeleteRow Allow deleting rows? rowResize Allow resizing rows? callback Subroutine to manage sheet events (optional) |
neoSheetDefineColumn
|
Purpose: |
Add a new column definition to a column array. Use before neoSheetInit |
|
Category: |
neoSheet |
|
Syntax: |
neoSheetDefineColumn columnsVar "title" type "width" "extra" "sourceCsv"
columnsVar Array variable holding column definitions title Column title type Column type width Optional width (e.g. 100px) extra Mask (text) or format (number) sourceCsv Dropdown values (comma-separated, only for dropdown) |
neoSheetAddDataRow
|
Purpose: |
Add a row of data to an existing data array variable using | as separator |
|
Category: |
neoSheet |
|
Syntax: |
neoSheetAddDataRow dataVar "pipeSeparatedRow"
dataVar Array variable holding data pipeSeparatedRow Values separated by pipe character |
neoSheetGetData
|
Purpose: |
Get data from selected worksheet |
|
Category: |
neoSheet |
|
Syntax: |
neoSheetGetData "objId" sheetIndex resultVar
objId Container object sheetIndex Worksheet index resultVar Variable to store result |
neoSheetSetData
|
Purpose: |
Replace worksheet data |
|
Category: |
neoSheet |
|
Syntax: |
neoSheetSetData "objId" sheetIndex "dataVarOrJson"
objId Container object sheetIndex Worksheet index dataVarOrJson JSON or variable name with array of data |
neoSheetGetCellValue
|
Purpose: |
Get a cell value from a worksheet |
|
Category: |
neoSheet |
|
Syntax: |
neoSheetGetCellValue "objId" sheetIndex "cellRef" computed resultVar
objId Container object sheetIndex Worksheet index cellRef Cell reference (ex: B2) computed Get calculated value? resultVar Variable to store result |
neoSheetSetCellValue
|
Purpose: |
Set a cell value in a worksheet |
|
Category: |
neoSheet |
|
Syntax: |
neoSheetSetCellValue "objId" sheetIndex "cellRef" "newValue"
objId Container object sheetIndex Worksheet index cellRef Cell reference (ex: B2) newValue Value |
neoSheetClear
|
Purpose: |
Clear worksheet content |
|
Category: |
neoSheet |
|
Syntax: |
neoSheetClear "objId" sheetIndex
objId Container object sheetIndex Worksheet index |
neoSheetGetCellBackgroundColor
|
Purpose: |
Get background color of a specific cell |
|
Category: |
neoSheet |
|
Syntax: |
neoSheetGetCellBackgroundColor "objId" sheetIndex "cellRef" resultVar
objId Container object sheetIndex Worksheet index cellRef Cell reference (ex: A1) resultVar Variable to store color |
neoSheetSetCellBackgroundColor
|
Purpose: |
Set background color of a specific cell |
|
Category: |
neoSheet |
|
Syntax: |
neoSheetSetCellBackgroundColor "objId" sheetIndex "cellRef" "color"
objId Container object sheetIndex Worksheet index cellRef Cell reference (ex: A1) color CSS background color |
neoSheetGetConfig
|
Purpose: |
Get the full spreadsheet configuration and data (for cloning or exporting) |
|
Category: |
neoSheet |
|
Syntax: |
neoSheetGetConfig "objId" resultVar
objId Container object resultVar Variable to store configuration object |
neoSheetSetConfig
|
Purpose: |
Create spreadsheet using a full configuration and data object |
|
Category: |
neoSheet |
|
Syntax: |
neoSheetSetConfig "objId" configVarOrObj
objId Container object configVarOrObj Variable populated with full config JSON |
neoSheetDefineFormula
|
Purpose: |
Define a custom formula that accepts a single value, multiple arguments or ranges. Use 'value' for single value and '...value' for multiple arguments or ranges. |
|
Category: |
neoSheet |
|
Syntax: |
neoSheetDefineFormula "formName" "expressionraw"
formName Name of the formula in uppercase (e.g., MYFUNC) expressionraw JavaScript expression using 'value' (e.g., Math.max(...value)) |
neoSheetGetColumnWidth
|
Purpose: |
Get the width of a specific column |
|
Category: |
neoSheet |
|
Syntax: |
neoSheetGetColumnWidth "objId" sheetIndex colIndex resultVar
objId Container object sheetIndex Worksheet index colIndex Column index (0-based) resultVar Variable to store width |
neoSheetSetColumnWidth
|
Purpose: |
Set the width of a specific column |
|
Category: |
neoSheet |
|
Syntax: |
neoSheetSetColumnWidth "objId" sheetIndex colIndex newWidth
objId Container object sheetIndex Worksheet index colIndex Column index (0-based) newWidth Width in pixels |
neoSheetMoveColumn
|
Purpose: |
Move a column from one index to another |
|
Category: |
neoSheet |
|
Syntax: |
neoSheetMoveColumn "objId" sheetIndex fromIndex toIndex
objId Container object sheetIndex Worksheet index fromIndex Column index to move toIndex Target index for the column |
neoSheetInsertColumn
|
Purpose: |
Insert one or more columns |
|
Category: |
neoSheet |
|
Syntax: |
neoSheetInsertColumn "objId" sheetIndex numOfColumns colIndex insertBefore
objId Container object sheetIndex Worksheet index numOfColumns Number of columns to insert colIndex Column index for insertion reference insertBefore Insert before or after reference column |
neoSheetDeleteColumn
|
Purpose: |
Delete one or more columns starting from a given index |
|
Category: |
neoSheet |
|
Syntax: |
neoSheetDeleteColumn "objId" sheetIndex colIndex count
objId Container object sheetIndex Worksheet index colIndex Start column index count Number of columns to delete |
neoSheetTranslate
|
Purpose: |
Translate a specific context menu phrase into another language |
|
Category: |
neoSheet |
|
Syntax: |
neoSheetTranslate sourceText "translatedText"
sourceText Chose a string to translate (replace space with _ ) translatedText Translated phrase to display |
neoSheetClearTranslations
|
Purpose: |
Reset all Jspreadsheet translations to English |
|
Category: |
neoSheet |
|
Syntax: |
neoSheetClearTranslations
|
neoSheetGetColumnTitle
|
Purpose: |
Get the title of a specific column |
|
Category: |
neoSheet |
|
Syntax: |
neoSheetGetColumnTitle "objId" sheetIndex colIndex resultVar
objId Container object sheetIndex Worksheet index colIndex Column index (0-based) resultVar Variable to store title |
neoSheetSetColumnTitle
|
Purpose: |
Set the title of a specific column |
|
Category: |
neoSheet |
|
Syntax: |
neoSheetSetColumnTitle "objId" sheetIndex colIndex "newTitle"
objId Container object sheetIndex Worksheet index colIndex Column index (0-based) newTitle The new title for the column |
neoSheetGetHeaders
|
Purpose: |
Get all column headers separated by commas |
|
Category: |
neoSheet |
|
Syntax: |
neoSheetGetHeaders "objId" sheetIndex resultVar
objId Container object sheetIndex Worksheet index resultVar Variable to store the headers array |
neoSheetSortByColumn
|
Purpose: |
Sort the table by a specific column |
|
Category: |
neoSheet |
|
Syntax: |
neoSheetSortByColumn "objId" sheetIndex colIndex order
objId Container object sheetIndex Worksheet index colIndex Column index (0-based) to sort by order Sort order. ASC for ascending, DESC for descending |
neoSheetGetComments
|
Purpose: |
Get the comments from a cell |
|
Category: |
neoSheet |
|
Syntax: |
neoSheetGetComments "objId" sheetIndex "cellRef" resultVar
objId Container object sheetIndex Worksheet index cellRef Cell reference (e.g., A1) resultVar Variable to store the comments |
neoSheetSetComments
|
Purpose: |
Set the comments for a cell |
|
Category: |
neoSheet |
|
Syntax: |
neoSheetSetComments "objId" sheetIndex "cellRef" "comments"
objId Container object sheetIndex Worksheet index cellRef Cell reference (e.g., A1) comments Comments to set |
neoSheetGetColumnData
|
Purpose: |
Get the data of a specific column into an Array variable |
|
Category: |
neoSheet |
|
Syntax: |
neoSheetGetColumnData "objId" sheetIndex colIndex resultVar
objId Container object sheetIndex Worksheet index colIndex Column index (0-based) resultVar Variable to store the column data array |
neoSheetSetColumnData
|
Purpose: |
Set the data for a specific column |
|
Category: |
neoSheet |
|
Syntax: |
neoSheetSetColumnData "objId" sheetIndex colIndex "dataVarOrArray"
objId Container object sheetIndex Worksheet index colIndex Column index (0-based) dataVarOrArray Array or variable with column data |
neoSheetInsertRow
|
Purpose: |
Insert one or more rows |
|
Category: |
neoSheet |
|
Syntax: |
neoSheetInsertRow "objId" sheetIndex numOfRows rowIndex insertBefore
objId Container object sheetIndex Worksheet index numOfRows Number of rows to insert rowIndex Row index for insertion reference insertBefore Insert before or after reference row |
neoSheetDeleteRow
|
Purpose: |
Delete one or more rows |
|
Category: |
neoSheet |
|
Syntax: |
neoSheetDeleteRow "objId" sheetIndex rowIndex numOfRows
objId Container object sheetIndex Worksheet index rowIndex Row index to start deletion numOfRows Number of rows to delete |
neoSheetMoveRow
|
Purpose: |
Move a row to a new position |
|
Category: |
neoSheet |
|
Syntax: |
neoSheetMoveRow "objId" sheetIndex fromIndex toIndex
objId Container object sheetIndex Worksheet index fromIndex The row index to move from toIndex The row index to move to |
neoSheetGetRowData
|
Purpose: |
Get the data of a specific row |
|
Category: |
neoSheet |
|
Syntax: |
neoSheetGetRowData "objId" sheetIndex rowIndex resultVar
objId Container object sheetIndex Worksheet index rowIndex Row index (0-based) resultVar Variable to store the row data array |
neoSheetSetRowData
|
Purpose: |
Set the data for a specific row |
|
Category: |
neoSheet |
|
Syntax: |
neoSheetSetRowData "objId" sheetIndex rowIndex "dataVarOrArray"
objId Container object sheetIndex Worksheet index rowIndex Row index (0-based) dataVarOrArray Array or variable with row data |
neoSheetGetRowId
|
Purpose: |
Get the row ID for a given row index |
|
Category: |
neoSheet |
|
Syntax: |
neoSheetGetRowId "objId" sheetIndex rowIndex resultVar
objId Container object sheetIndex Worksheet index rowIndex Row index (0-based) resultVar Variable to store the row ID |
neoSheetGetRowHeight
|
Purpose: |
Get the height of a specific row |
|
Category: |
neoSheet |
|
Syntax: |
neoSheetGetRowHeight "objId" sheetIndex rowIndex resultVar
objId Container object sheetIndex Worksheet index rowIndex Row index (0-based) resultVar Variable to store the height |
neoSheetSetRowHeight
|
Purpose: |
Set the height for a specific row |
|
Category: |
neoSheet |
|
Syntax: |
neoSheetSetRowHeight "objId" sheetIndex rowIndex newHeight
objId Container object sheetIndex Worksheet index rowIndex Row index (0-based) newHeight The new height for the row |
neoSheetGetRowProperties
|
Purpose: |
Get properties of a specific row |
|
Category: |
neoSheet |
|
Syntax: |
neoSheetGetRowProperties "objId" sheetIndex rowIndex resultVar
objId Container object sheetIndex Worksheet index rowIndex Row index (0-based) resultVar Variable to store the properties object |
neoSheetSetRowProperties
|
Purpose: |
Set properties for a specific row |
|
Category: |
neoSheet |
|
Syntax: |
neoSheetSetRowProperties "objId" sheetIndex rowIndex "propertiesObj"
objId Container object sheetIndex Worksheet index rowIndex Row index (0-based) propertiesObj JSON or variable with properties object |
neoSheetUpdateCellProperty
|
Purpose: |
Update a property for a specific cell |
|
Category: |
neoSheet |
|
Syntax: |
neoSheetUpdateCellProperty "objId" sheetIndex "cellRef" "property" "value"
objId Container object sheetIndex Worksheet index cellRef Cell reference (e.g., A1) property The property to update value The new value for the property |
neoSheetGetFormattedValue
|
Purpose: |
Get the formatted value of a cell |
|
Category: |
neoSheet |
|
Syntax: |
neoSheetGetFormattedValue "objId" sheetIndex "cellRef" resultVar
objId Container object sheetIndex Worksheet index cellRef Cell reference (e.g., A1) resultVar Variable to store the formatted value |
neoSheetSetCellStyle
|
Purpose: |
pply direct CSS styles to a cell (e.g. text-align:left;background-color:yellow) |
|
Category: |
neoSheet |
|
Syntax: |
neoSheetSetCellStyle "objId" sheetIndex "cellRef" "styleObj"
objId Container object sheetIndex Worksheet index cellRef Cell reference (e.g., A1) styleObj CSS style string (semicolon-separated) |
neoSheetRemoveCellStyle
|
Purpose: |
Remove style from a specific cell |
|
Category: |
neoSheet |
|
Syntax: |
neoSheetRemoveCellStyle "objId" sheetIndex "cellRef" "styleKeys"
objId Container object sheetIndex Worksheet index cellRef Cell reference (e.g., A1) styleKeys Comma-separated list of style keys to remove |
neoSheetGetCellStyle
|
Purpose: |
Get the style of a specific cell |
|
Category: |
neoSheet |
|
Syntax: |
neoSheetGetCellStyle "objId" sheetIndex "cellRef" resultVar
objId Container object sheetIndex Worksheet index cellRef Cell reference (e.g., A1) resultVar Variable to store the style object |
neoSheetSetCellReadOnly
|
Purpose: |
Set a cell as read-only or not |
|
Category: |
neoSheet |
|
Syntax: |
neoSheetSetCellReadOnly "objId" sheetIndex "cellRef" isReadOnly
objId Container object sheetIndex Worksheet index cellRef Cell reference (e.g., A1) isReadOnly True for read-only, false for writable |
neoSheetSetRangeReadOnly
|
Purpose: |
Set or unset read-only mode for a range of cells |
|
Category: |
neoSheet |
|
Syntax: |
neoSheetSetRangeReadOnly "objId" sheetIndex "cellRange" isReadOnly
objId Container object sheetIndex Worksheet index cellRange Cell or range (e.g. A1 or A1:C3) isReadOnly true = block, false = allow edit |
neoSheetSetColumnReadOnly
|
Purpose: |
Set or unset read-only mode for an entire column |
|
Category: |
neoSheet |
|
Syntax: |
neoSheetSetColumnReadOnly "objId" sheetIndex colIndex isReadOnly
objId Container object sheetIndex Worksheet index colIndex Column index (0-based) isReadOnly true = block, false = allow edit |
neoSheetSetRowReadOnly
|
Purpose: |
Set or unset read-only mode for an entire row |
|
Category: |
neoSheet |
|
Syntax: |
neoSheetSetRowReadOnly "objId" sheetIndex rowIndex isReadOnly
objId Container object sheetIndex Worksheet index rowIndex Row index (0-based) isReadOnly true = block, false = allow edit |
neoSheetIsCellReadOnly
|
Purpose: |
Check if a cell is read-only |
|
Category: |
neoSheet |
|
Syntax: |
neoSheetIsCellReadOnly "objId" sheetIndex "cellRef" resultVar
objId Container object sheetIndex Worksheet index cellRef Cell reference (e.g., A1) resultVar Variable to store the result (true/false) |
neoSheetGetValueById
|
Purpose: |
Get a cell value by its ID |
|
Category: |
neoSheet |
|
Syntax: |
neoSheetGetValueById "objId" sheetIndex "id" resultVar
objId Container object sheetIndex Worksheet index id The ID of the cell resultVar Variable to store the value |
neoSheetSetValueById
|
Purpose: |
Set a cell value by its ID |
|
Category: |
neoSheet |
|
Syntax: |
neoSheetSetValueById "objId" sheetIndex "id" "newValue"
objId Container object sheetIndex Worksheet index id The ID of the cell newValue The new value to set |
neoSheetGetCellObject
|
Purpose: |
Get the cell object |
|
Category: |
neoSheet |
|
Syntax: |
neoSheetGetCellObject "objId" sheetIndex "cellRef" resultVar
objId Container object sheetIndex Worksheet index cellRef Cell reference (e.g., A1) resultVar Variable to store the cell object |
neoSheetCreateWorksheet
|
Purpose: |
Create a new worksheet in the spreadsheet |
|
Category: |
neoSheet |
|
Syntax: |
neoSheetCreateWorksheet "objId" ncolumns nrows "dataVarOrJson" "columnsVarOrJson" position "worksheetName"
objId Container object ncolumns Number of columns nrows Number of rows dataVarOrJson Optional data array JSON or variable columnsVarOrJson Optional column definitions JSON or variable position Optional index to insert at worksheetName Worksheet name |
neoSheetDeleteWorksheet
|
Purpose: |
Delete a worksheet by index |
|
Category: |
neoSheet |
|
Syntax: |
neoSheetDeleteWorksheet "objId" sheetIndex
objId Container object sheetIndex Worksheet index to delete |
neoSheetGetWorksheetNames
|
Purpose: |
Get the names of all worksheets in the spreadsheet |
|
Category: |
neoSheet |
|
Syntax: |
neoSheetGetWorksheetNames "objId" resultVar
objId Container object resultVar Variable to store array of worksheet names |
neoSheetGetWorksheetCount
|
Purpose: |
Get the total number of worksheets |
|
Category: |
neoSheet |
|
Syntax: |
neoSheetGetWorksheetCount "objId" resultVar
objId Container object resultVar Variable to store worksheet count |
neoSheetExists
|
Purpose: |
Check if the spreadsheet has been initialized |
|
Category: |
neoSheet |
|
Syntax: |
neoSheetExists "objId" resultVar
objId Container object resultVar Variable to store result (true/false) |
neoSheetRenameWorksheet
|
Purpose: |
Rename a worksheet |
|
Category: |
neoSheet |
|
Syntax: |
neoSheetRenameWorksheet "objId" sheetIndex "newName"
objId Container object sheetIndex Worksheet index newName New worksheet name |
neoSheetSetActiveWorksheet
|
Purpose: |
Set the active worksheet |
|
Category: |
neoSheet |
|
Syntax: |
neoSheetSetActiveWorksheet "objId" sheetIndex
objId Container object sheetIndex The worksheet index to set as active |
neoSheetGetWorksheetData
|
Purpose: |
Get data from a specific worksheet |
|
Category: |
neoSheet |
|
Syntax: |
neoSheetGetWorksheetData "objId" sheetIndex resultVar
objId Container object sheetIndex Worksheet index resultVar Variable to store result |
neoSheetSetWorksheetData
|
Purpose: |
Replace data in a specific worksheet |
|
Category: |
neoSheet |
|
Syntax: |
neoSheetSetWorksheetData "objId" sheetIndex "dataVarOrJson"
objId Container object sheetIndex Worksheet index dataVarOrJson JSON or variable name with array of data |
neoSheetGetMerge
|
Purpose: |
Get merge information for a cell |
|
Category: |
neoSheet |
|
Syntax: |
neoSheetGetMerge "objId" sheetIndex "cellRef" resultVar
objId Container object sheetIndex Worksheet index cellRef Cell reference (e.g., A1) resultVar Variable to store merge information |
neoSheetSetMerge
|
Purpose: |
Merge cells |
|
Category: |
neoSheet |
|
Syntax: |
neoSheetSetMerge "objId" sheetIndex "cellRef" colspan rowspan force
objId Container object sheetIndex Worksheet index cellRef Cell reference (e.g., A1) colspan Number of columns to merge rowspan Number of rows to merge force Force merge even if cells are not empty |
neoSheetRemoveMerge
|
Purpose: |
Remove merge from a cell |
|
Category: |
neoSheet |
|
Syntax: |
neoSheetRemoveMerge "objId" sheetIndex "cellRef"
objId Container object sheetIndex Worksheet index cellRef Cell reference (e.g., A1) |
neoSheetGetMerges
|
Purpose: |
Get all merged cells |
|
Category: |
neoSheet |
|
Syntax: |
neoSheetGetMerges "objId" sheetIndex resultVar
objId Container object sheetIndex Worksheet index resultVar Variable to store the merged cells object |
neoSheetUndo
|
Purpose: |
Undo the last action |
|
Category: |
neoSheet |
|
Syntax: |
neoSheetUndo "objId" sheetIndex
objId Container object sheetIndex Worksheet index |
neoSheetRedo
|
Purpose: |
Redo the last action |
|
Category: |
neoSheet |
|
Syntax: |
neoSheetRedo "objId" sheetIndex
objId Container object sheetIndex Worksheet index |
neoSheetGetHistory
|
Purpose: |
Get the history of actions |
|
Category: |
neoSheet |
|
Syntax: |
neoSheetGetHistory "objId" sheetIndex resultVar
objId Container object sheetIndex Worksheet index resultVar Variable to store the history object |
neoSheetSetHistory
|
Purpose: |
Set the history of actions |
|
Category: |
neoSheet |
|
Syntax: |
neoSheetSetHistory "objId" sheetIndex "historyObj"
objId Container object sheetIndex Worksheet index historyObj JSON or variable with history object |
neoSheetResetHistory
|
Purpose: |
Reset the history of actions |
|
Category: |
neoSheet |
|
Syntax: |
neoSheetResetHistory "objId" sheetIndex
objId Container object sheetIndex Worksheet index |
neoSheetDownload
|
Purpose: |
Download the spreadsheet as a CSV file |
|
Category: |
neoSheet |
|
Syntax: |
neoSheetDownload "objId" sheetIndex
objId Container object sheetIndex Worksheet index |
neoSheetShowToolbar
|
Purpose: |
Show the toolbar |
|
Category: |
neoSheet |
|
Syntax: |
neoSheetShowToolbar "objId"
objId Container object |
neoSheetHideToolbar
|
Purpose: |
Hide the toolbar |
|
Category: |
neoSheet |
|
Syntax: |
neoSheetHideToolbar "objId"
objId Container object |
neoSheetDestroy
|
Purpose: |
Destroy the spreadsheet instance |
|
Category: |
neoSheet |
|
Syntax: |
neoSheetDestroy "objId"
objId Container object |
Created with the Personal Edition of HelpNDoc: Free EPub producer