Skip to main content

Overview

Excel tools provide comprehensive functionality for working with Excel files (.xlsx). You can read data, update cells, retrieve specific rows, and manipulate Excel files from URLs.

Key Features

  • EXCEL_GET_ROWS
    • Retrieve multiple rows from an Excel sheet
  • EXCEL_GET_ROW
    • Get a specific row from an Excel sheet
  • EXCEL_GET_CELL_WITH_COORDINATE
    • Get value from a specific cell coordinate
  • EXCEL_UPDATE
    • Update Excel file with new data using range selection
  • EXCEL_UPDATE_BY_COORDINATE
    • Update specific cells using coordinate-based positioning

Authentication

No authentication required. Excel tools work directly with file URLs.

Example: Reading Excel Data

- id: get_excel_rows
  name: get_excel_rows
  tool: EXCEL_GET_ROWS
  input:
    - name: url
      value: "https://example.com/data.xlsx"
    - name: sheetName
      value: "Sheet1"
    - name: startRow
      value: 2
    - name: endRow
      value: 10

- id: get_specific_row
  name: get_specific_row
  tool: EXCEL_GET_ROW
  input:
    - name: url
      value: "https://example.com/data.xlsx"
    - name: sheetName
      value: "Sheet1"
    - name: rowIndex
      value: 5

- id: get_cell_value
  name: get_cell_value
  tool: EXCEL_GET_CELL_WITH_COORDINATE
  input:
    - name: url
      value: "https://example.com/data.xlsx"
    - name: sheetName
      value: "Sheet1"
    - name: coordinate
      value: "B5"

Example: Updating Excel Data

- id: update_excel_range
  name: update_excel_range
  tool: EXCEL_UPDATE
  input:
    - name: url
      value: "https://example.com/template.xlsx"
    - name: sheetName
      value: "Data"
    - name: startCell
      value: "A2"
    - name: endCell
      value: "C4"
    - name: data
      value: [
        ["John Doe", "Manager", "50000"],
        ["Jane Smith", "Developer", "60000"],
        ["Bob Johnson", "Designer", "45000"]
      ]

- id: update_specific_cell
  name: update_specific_cell
  tool: EXCEL_UPDATE_BY_COORDINATE
  input:
    - name: url
      value: "https://example.com/report.xlsx"
    - name: sheetName
      value: "Summary"
    - name: coordinate
      value: "E10"
    - name: value
      value: "{{steps.calculate_total.result.sum}}"

Example: Excel Data Processing Workflow

- id: read_source_data
  name: read_source_data
  tool: EXCEL_GET_ROWS
  input:
    - name: url
      value: "{{secrets.EXCEL_SOURCE_URL}}"
    - name: sheetName
      value: "RawData"
    - name: startRow
      value: 2
    - name: endRow
      value: 100

- id: process_data
  name: process_data
  tool: PYTHON_SANDBOX_RUN
  input:
    - name: script
      value: |
        import json
        
        # Get data from previous step
        raw_data = {{steps.read_source_data.result.data}}
        
        # Process and transform data
        processed_data = []
        for row in raw_data:
            if row[0] and row[1]:  # Check if name and value exist
                processed_data.append([
                    row[0].upper(),  # Uppercase name
                    float(row[1]) * 1.1,  # Increase value by 10%
                    "Processed"
                ])
        
        print(json.dumps({"processed_data": processed_data}))

- id: update_target_excel
  name: update_target_excel
  tool: EXCEL_UPDATE
  input:
    - name: url
      value: "{{secrets.EXCEL_TARGET_URL}}"
    - name: sheetName
      value: "ProcessedData"
    - name: startCell
      value: "A2"
    - name: data
      value: "{{steps.process_data.result.processed_data}}"

Tips and Best Practices

  • Always specify the sheet name to avoid working with the wrong sheet
  • Use coordinate notation (A1, B2, etc.) for precise cell references
  • When updating ranges, ensure your data array dimensions match the specified range
  • For large datasets, consider processing data in chunks to avoid timeouts
  • Validate data format before updating Excel files to prevent errors