Nodes/ComfyUI-Apt_Preset/excel_insert_image
ComfyUI Node

excel_insert_image

Deprecated — use excel_insert_image_easy instead

By cardenluo·Created 2 years ago·Updated 18 days ago· 309
excel_insert_image
    • debug
    excel_pathexcel_file_path.xlsx
    sheet_nameSheet1
    row_start0
    row_end1
    col_start0
    col_end1
    img_height256
    image_pathimage_file_path.png

    excel_insert_image drops an image into a spreadsheet cell range - but it's marked deprecated in the pack now, and once you see how it works, it's easy to understand why: the same pack ships excel_insert_image_easy, which does the same job with a direct IMAGE input instead of making you save a file to disk first and hand it a path. Unless you're maintaining an existing workflow built on this node, start with the "easy" version.

    How it works

    Instead of taking an image straight off your ComfyUI graph, this node reads one from disk via image_path and writes it into the spreadsheet at a cell range you define with row_start/row_end/col_start/col_end. Its own description spells out two genuinely different behaviors depending on how you set those four numbers, and they're worth knowing before you get a confusing result:

    • Set row_start=2, row_end=3, col_start=2, col_end=5 and the image tiles sequentially across that whole rectangle - row 2/col 2 through row 3/col 5, filling multiple cells.
    • Set row_start=0, row_end=3, col_start=0, col_end=5 (start values at zero) and instead the image goes into just one cell - row 3, col 5. Zero in a start field acts as a sentinel meaning "collapse to just the end coordinate," not literally row/column zero.

    That dual-mode behavior driven by whether your start values are zero is the kind of thing that's easy to trip over, and it's a big part of why this node reads as fiddly next to its successor.

    The inputs and outputs that matter

    • excel_path / sheet_name - target file and sheet.
    • row_start / row_end / col_start / col_end - the range, with the zero-start-means-single-cell behavior described above.
    • img_height (64–2048) - the inserted image's display size in the sheet.
    • image_path - a file path on disk, not an IMAGE input. You need to save your generated image somewhere first and point this at that path.
    • Output: debug (STRING) - for checking what actually happened after the write.

    How to install it

    Bundled with the full pack. Via ComfyUI Manager: search "ComfyUI-Apt_Preset" → Install → restart. Manually:

    cd ComfyUI/custom_nodes
    git clone https://github.com/cardenluo/ComfyUI-Apt_Preset.git
    

    Windows: run install.bat afterward through ComfyUI's embedded Python. Linux/Mac: activate your ComfyUI venv and install requirements from that folder by hand. Restart ComfyUI. Beyond the pack's usual .xlsx-handling dependency, this node also needs whatever image file it's pointed at to actually exist on disk at run time - it doesn't accept an in-graph image directly.

    Common issues & troubleshooting

    Image lands in the wrong cell, or spreads across cells you didn't expect. This is almost always the zero-start behavior described above - check whether row_start/col_start are zero (single-cell mode, targeting the end coordinate) or nonzero (range-fill mode). It's the single most common point of confusion with this node.

    "File not found" even though the image clearly generated. image_path points at a file on disk, so you need a Save Image (or similar) step upstream to actually write the file before this node runs, and the path needs to resolve correctly relative to wherever ComfyUI is running from.

    Just switch to excel_insert_image_easy. If you don't specifically need the range-fill behavior, the easy version takes an IMAGE directly off your graph, targets a single row/column, and skips the save-to-disk step entirely - it's the actively maintained node and does everything most people actually need from this one.

    CategoryApt_Preset/🚫Deprecated/🚫

    Inputs (8)

    NameTypeDefaultDescription
    excel_pathSTRINGexcel_file_path.xlsx
    sheet_nameSTRINGSheet1
    row_startINT0
    row_endINT1
    col_startINT0
    col_endINT1
    img_heightINT25664–2048
    image_pathSTRINGimage_file_path.png

    Outputs (1)

    NameTypeDescription
    debugSTRING