Inputs and Forms

Editable cells are the inputs to your NExS app. This guide covers how to configure inputs, add validation, and build interactive forms.

Defining Editable Cells

Use the editable (or input/inputs) keyword in your view configuration:

A B C
2 view Sheet1!A1:G18
3 editable B3:B8, C12

This allows users to edit cells B3 through B8 and cell C12.

Single vs. Multiple Inputs

You can list inputs on one line or split them for clarity:

A B C D
3 editable B3:B8, C12, D5 # All on one line

Or split them into logical groups:

A B C D
3 inputs B3:B5 # Personal info
4 input C12 # Start date
5 inputs D5:D8 # Preferences

Both input and inputs work the same as editable.

Adding Comments

Document your configuration with comments (start with # or //):

A B C D
3 inputs B3:B5 # Customer name fields
4 input C12 // Effective date

Input Types

By default, editable cells accept text input. Add attributes to create specialized input types.

Checkboxes

Checkboxes work well for yes/no questions, feature toggles, and boolean options. When checked, the cell receives the value 1; when unchecked, it receives 0. Your Excel formulas can then use these values in calculations or conditional logic.

A B C D
3 inputs B10:B12 checkbox

Radio Groups

When users need to pick exactly one option from a set, radio groups enforce mutual exclusivity. Clicking any option in the group sets that cell to 1 while automatically setting all others to 0. This is ideal for survey questions, plan selections, or any “choose one” scenario.

A B C D
3 inputs C5:C8 radioGroup

Email and Phone Validation

Adding email or phone as an attribute tells NExS to validate the input format before accepting it. Email validation ensures the value follows standard email format (like user@example.com), while phone validation checks for valid phone number patterns. Invalid entries are rejected, preventing malformed data from reaching your spreadsheet.

A B C D
3 input B5 email
4 input B6 phone

Required Fields

Marking inputs as required integrates with NExS’s form validation system. On its own, this attribute flags the field visually. Combined with the %REQUIRED button macro, you can disable submit buttons until all required fields contain values—preventing incomplete form submissions.

A B C D
3 inputs B3:B6 required

Combining Attributes

Apply multiple attributes by separating with commas:

A B C D
3 input B5 required, email

This creates a required email field.

Access Control on Inputs

When multiple people use the same app, you often need different people to edit different fields. NExS provides granular control over who can modify specific inputs.

By Access Key

In Access Code apps, different access keys can grant different editing permissions. An admin might be able to edit configuration fields while regular users can only fill in their own data sections.

A B C D
3 inputs B3:B5 accessKeys: Admin
4 inputs C3:C5 accessKeys: User1, User2

Read vs. Write Access

Team mode apps can separate viewing and editing permissions. Use readACL to control who sees the view and writeACL to control who can modify its inputs. This lets you create dashboards where many people view the data but only designated users can make changes.

A B C D
3 inputs B3:B5
4 readACL user1@example.com, user2@example.com
5 writeACL admin@example.com

Building Forms

Example: Contact Form

Excel layout (Sheet1):

A B
1 Contact Us
2
3 Name
4 Email
5 Phone
6 Message
7
8 [Submit]

NExS.app configuration:

A B C D
1 app Contact Form
2 submitList sales@company.com
3 view Sheet1!A1:B8
4 editable B3 required
5 editable B4 required, email
6 editable B5 phone
7 editable B6 required
8 button A8

Cell A8 content: Submit {disabled: %REQUIRED, sendData: 'B3:B6'}

This creates a form where:

  • Name, Email, and Message are required
  • Email must be a valid format
  • Phone is optional but validated
  • Submit button is disabled until all required fields are filled
  • Clicking Submit emails the form data to sales@company.com

Example: Multi-Step Form

Use multiple views to create a wizard-style form:

A B C D
1 app Application Form
2 noViewNav true
3 view Sheet1!A1:F15
4 name Step 1
5 editable B3:B8 required
6 button A14
7 view Sheet1!A20:F35
8 name Step 2
9 editable B23:B28
10 button A33, A34

Navigation buttons:

  • Step 1, cell A14: Next {disabled: %REQUIRED, setView: 'Step 2'}
  • Step 2, cell A33: Back {setView: 'Step 1'}
  • Step 2, cell A34: Submit {sendData: 'A1:F35'}

Form Validation Tips

  1. Use required sparingly — Only mark truly essential fields
  2. Group related inputs — Logical sections improve user experience
  3. Provide clear labels — Users should know what each field expects
  4. Use format validation — Email and phone validation prevent errors
  5. Give feedback — Use conditional formatting to highlight errors

Next Steps