smithery/masharratt

google-sheets-formula-builder

Constructs and validates Google Sheets formulas from templates with syntax checking

Installation

$ npx skills add smithery/masharratt --skill google-sheets-formula-builder

Similar popular skills

Related neighbors and high-traction skills in the same topics — useful to compare before installing.

Also in this package

Other skills from smithery/masharratt · top by installs.

npx skills add smithery/masharratt

Browse all from smithery/masharratt

More details

Agent compatibility

Declared targets from SKILL.md / docs. Unmarked agents are not listed — the skill may still install via the CLI.

Claude Code Declared
Cursor Not declared
Codex Not declared
GitHub Copilot Not declared
Windsurf Not declared
Gemini CLI Not declared
Cline Not declared
OpenCode Not declared

Skill metadata

Parsed from SKILL.md frontmatter.

Version1.0.0
Declared agents claude-code

Package contents

Files included with this skill beyond the listing page.

  • skill md SKILL.md 6,479 B
  • docs SUMMARY.md 120 B

History

  1. First recorded snapshot · 0 installs

SKILL.md

Google Sheets Formula Builder Skill

Purpose

Constructs Google Sheets formulas from templates and validates syntax before application. Enables safe formula generation with type checking, cell reference validation, and error prevention.

Problem Solved

Manual formula creation is error-prone. Formulas with syntax errors, invalid references, or circular logic cause cascading failures in spreadsheets. This skill provides template-based formula generation with comprehensive validation ensuring only correct formulas are applied.

When to Use

  • During formula application sprint phase
  • When generating aggregate calculations (SUM, AVERAGE, COUNT)
  • For conditional logic (IF, IFS, SWITCH)
  • When building lookup operations (VLOOKUP, INDEX/MATCH)
  • For array formula generation
  • Before applying formulas to production sheets

Interface

Primary Script: build-formula.sh

Required Parameters:

  • --formula-type: Type of formula to build: SUM, AVERAGE, VLOOKUP, IF, ARRAY (required)
  • --range: Cell range for formula, e.g., A2:C10
  • --target-cell: Target cell for formula placement, e.g., D2

Optional Parameters:

  • --condition: Condition for IF formulas, e.g., "A2>100"
  • --criteria: Criteria for formula, e.g., "Status=Complete"
  • --output-only: Output formula only, don't apply (default: true)
  • --validate-only: Validate formula syntax without applying

Usage:

# Generate SUM formula
./.claude/cfn-extras/skills/google-sheets-formula-builder/build-formula.sh \
  --formula-type SUM \
  --range A2:C10 \
  --target-cell D2

# Generate IF formula
./.claude/cfn-extras/skills/google-sheets-formula-builder/build-formula.sh \
  --formula-type IF \
  --range A2:C10 \
  --condition "A2>100" \
  --target-cell D2

# Generate VLOOKUP formula
./.claude/cfn-extras/skills/google-sheets-formula-builder/build-formula.sh \
  --formula-type VLOOKUP \
  --range A2:C10 \
  --criteria "Lookup" \
  --target-cell D2

# Validate syntax only
./.claude/cfn-extras/skills/google-sheets-formula-builder/build-formula.sh \
  --formula-type SUM \
  --range A2:C10 \
  --validate-only

Supported Formula Types

SUM

Sums values in a range with optional conditions.

{
  "type": "SUM",
  "formula": "=SUM(A2:C10)",
  "description": "Sum of range A2:C10",
  "complexity": "basic"
}

AVERAGE

Calculates average of values in range.

{
  "type": "AVERAGE",
  "formula": "=AVERAGE(A2:C10)",
  "description": "Average of range A2:C10",
  "complexity": "basic"
}

VLOOKUP

Looks up value in first column of range.

{
  "type": "VLOOKUP",
  "formula": "=VLOOKUP(\"Lookup\",A2:C10,2,FALSE)",
  "description": "Lookup value in range",
  "complexity": "intermediate"
}

IF

Conditional formula with true/false branches.

{
  "type": "IF",
  "formula": "=IF(A2>100,\"High\",\"Low\")",
  "description": "If A2>100 then High else Low",
  "complexity": "intermediate"
}

ARRAY

Array formula with multiple return values.

{
  "type": "ARRAY",
  "formula": "=ARRAYFORMULA(IF(A2:A>0,B2:B*C2:C,\"\"))",
  "description": "Array formula calculating range",
  "complexity": "advanced"
}

Output Format

{
  "success": true,
  "confidence": 0.96,
  "formula": "=SUM(A2:C10)",
  "formula_type": "SUM",
  "target_cell": "D2",
  "syntax_valid": true,
  "validation": {
    "syntax": true,
    "references": true,
    "circular_refs": false,
    "error_cells": 0
  },
  "deliverables": ["formula_definition"],
  "errors": []
}

Validation Rules

  1. Syntax validation - Formula parses correctly
  2. Reference validation - Cell references exist and are valid
  3. Circular reference detection - No self-referencing formulas
  4. Type checking - Function arguments match expected types
  5. Range validation - Ranges are properly formatted
  6. Function existence - All functions are Google Sheets functions

Integration with CFN Loop

Loop 3 Agents (Formula Phase)

# Generate formula
FORMULA=$(./.claude/cfn-extras/skills/google-sheets-formula-builder/build-formula.sh \
  --formula-type SUM \
  --range A2:C100 \
  --target-cell D2)

# Validate formula
if echo "$FORMULA" | jq -e '.syntax_valid == true' >/dev/null; then
  echo "Formula generated and validated successfully"
else
  echo "Formula validation failed"
fi

Loop 2 Validators

# Review generated formulas
VALIDATION=$(./.claude/cfn-extras/skills/google-sheets-formula-builder/build-formula.sh \
  --formula-type VLOOKUP \
  --range A2:C100 \
  --validate-only)

if echo "$VALIDATION" | jq -e '.validation.syntax == true' >/dev/null; then
  echo "Formula syntax valid, passing validation"
fi

Best Practices

  1. Validate before applying - Always validate formula syntax first
  2. Use templates - Leverage formula templates for consistency
  3. Test ranges - Verify cell ranges exist before formula generation
  4. Document formulas - Include comment explaining complex formulas
  5. Version formulas - Track formula changes in progress state

Anti-Patterns

Manual formula strings - Always use builder script ❌ Skipping validation - Always validate before applying ❌ Hardcoded ranges - Use parameterized ranges ❌ Complex nested formulas - Break into helper columns ❌ No error handling - Check for error cells in results

Success Criteria

  • Pass rate: ≥0.98 (standard mode)
  • Syntax accuracy: 100% correct Google Sheets syntax
  • Reference validation: 0 false negatives on invalid references
  • Performance: Formula generation <1000ms
  • Error detection: Catches all syntax errors

References