returns a list of CellObject expressions corresponding to cells in the current notebook.


returns the list of CellObject expressions in obj.


returns the list of CellObject expressions for currently selected cells.

Details and Options

  • Cells always returns a list if the value of obj is valid. Otherwise, it returns $Failed.
  • obj may be a NotebookObject or a CellObject. If obj is a CellObject, then Cells returns the inline cells in the specified cell.
  • Cells can further refine the list of returned CellObject expressions by specifying one or more of the following options.
  • CellIDcell IDs to match
    CellLabelIn/Out label strings to match
    CellStylenamed cell styles to match
    CellTagscell tags to match
    Evaluatorcells that match the specified evaluator
    GeneratedCellmatch only generated output cells if True, or only non-generated cells if False
  • When multiple options are passed to Cells, the return result will only include CellObject expressions matching cells that meet all conditions.
  • If a list of values is given to any single option of Cells, then it will match any of the given values.
  • If the selection in a notebook is inside of a cell, then Cells[NotebookSelection[notebook]] returns the cell containing the selection.


open allclose all

Basic Examples  (3)

Return a range of cells in the evaluation notebook:

Return all of the cells in the specified notebook:

Return the first three Input cells in the evaluation notebook:

Scope  (3)

Return a list of any selected cells:

Give a list of values to an option to select cells that match any of the values:

Use multiple options to select the intersection of cells that match all of the listed criteria:

Options  (6)

CellID  (1)

Return cell with a given CellID:

CellLabel  (1)

Return all cells with a given cell label:

CellStyle  (1)

Return all cells of a given style:

CellTags  (1)

Return cells with a given cell tag:

Evaluator  (1)

GeneratedCell  (1)

Get only the generated cells from a notebook, including Output and Print cells:

Get only non-generated cells:

Applications  (2)

Delete all generated cells in a notebook:

Change all cells of a given style to another style:

Properties & Relations  (1)

Cells only scans top-level cells for matching criteria, not inline cells:

However, if the selection is in an inline cell, you can get the inline cell's CellObject:

Possible Issues  (1)

Cells returns $Failed if the NotebookObject does not exist:

Introduced in 2012
Updated in 2014